1 |
Luca Barbato wrote: |
2 |
> Ciaran McCreesh wrote: |
3 |
>> Because your proposal addresses none of the underlying problems which |
4 |
>> GLEP 55 was created to solve. |
5 |
|
6 |
let's get some numbers to have an idea of the dimension of the problem. |
7 |
|
8 |
domino portage # wc -l /dev/shm/eapi_files.list |
9 |
2854 /dev/shm/eapi_files.list |
10 |
|
11 |
domino portage # ls *-*/*/*.ebuild | wc -l |
12 |
25761 |
13 |
|
14 |
domino portage # grep -l EAPI eclass/*.eclass | wc -l |
15 |
22 |
16 |
|
17 |
domino portage # ls eclass/*.eclass | wc -l |
18 |
240 |
19 |
|
20 |
there aren't eclasses setting EAPI directly. |
21 |
|
22 |
eapi is set either using EAPI=X or EAPI="X" |
23 |
|
24 |
domino portage # time grep EAPI *-*/*/*.ebuild > /dev/shm/eapi_files.list |
25 |
|
26 |
real 0m1.019s |
27 |
user 0m0.608s |
28 |
sys 0m0.412s |
29 |
|
30 |
domino portage # time (for a in *-*/*/*.ebuild*; do echo ${A##*.ebuild}; |
31 |
done) > /dev/null |
32 |
|
33 |
real 0m0.916s |
34 |
user 0m0.764s |
35 |
sys 0m0.152s |
36 |
|
37 |
domino portage # time emerge --regen > /dev/shm/regen |
38 |
|
39 |
real 0m9.308s |
40 |
user 0m7.648s |
41 |
sys 0m1.664s |
42 |
|
43 |
|
44 |
Restricting eapi so it could surely parsed using something as |
45 |
complex as grep would and using a two stage parsing would increase to |
46 |
about 1/9 |
47 |
|
48 |
Using a dumb way to extract the eapi from extension seems to take 1/10 |
49 |
|
50 |
Is there any technical merit in putting eapi in the file extension while |
51 |
we could restrict the format the same way in file and have about the |
52 |
same, negligible, performance hit? (I used warm cache since you need the |
53 |
file anyway so you don't spend time to look it up twice or put it in |
54 |
cache twice) |
55 |
|
56 |
Please come up with other numbers or saner implementations to compare. |
57 |
|
58 |
lu |
59 |
|
60 |
-- |
61 |
|
62 |
Luca Barbato |
63 |
Gentoo Council Member |
64 |
Gentoo/linux Gentoo/PPC |
65 |
http://dev.gentoo.org/~lu_zero |