1 |
-----BEGIN PGP SIGNED MESSAGE----- |
2 |
Hash: SHA1 |
3 |
|
4 |
On 2009.05.28 06:46, Tiziano Müller wrote: |
5 |
[snip] |
6 |
> I did some analysis on that. The result is that the the performance |
7 |
> penalty of not having the EAPI not in the filename depends on various |
8 |
> factors. But it is for sure that there is a performance penalty. |
9 |
It needs to be quantified in the GLEP. |
10 |
Nobody wants to trawl this list looking for it. |
11 |
|
12 |
> |
13 |
[snip the process - its an implementaion detail] |
14 |
> So, one of the main differences is: "reading one cache file" (if |
15 |
> running |
16 |
> unstable you can asssume you support the highest version, thus |
17 |
> reading |
18 |
> only one cache file) vs. "reading all cache files". |
19 |
> |
20 |
> I did some performance measurements based on that. I have 1507 |
21 |
> installed |
22 |
> packages with 5541 different versions/revisions. |
23 |
> |
24 |
> Reading from hot cache: |
25 |
> 1507 files: ~50ms |
26 |
> 5541 files: ~170ms |
27 |
> |
28 |
> Reading from cold cache: |
29 |
> 1507 files: ~2.8s |
30 |
> 5541 files: ~6s |
31 |
As I understand this, it may add six seconds to an emerge world while |
32 |
the dep tree is calculated. Lets say it takes an hour to do emerge |
33 |
world, the time has increased from 3600 seconds to 3606 seconds or a |
34 |
trivial 0.1666667% |
35 |
|
36 |
We are clearly concentrating our efforts in wrong area, trying to |
37 |
reduce the six seconds. |
38 |
> |
39 |
> I made a lot of assumptions here (neglecting seek between ebuild-dir |
40 |
> and |
41 |
> metadata-dir, other processes using the drive, 80 ebuilds from |
42 |
> overlays |
43 |
> where the ebuild would have to be read, etc.). But estimating from |
44 |
> the |
45 |
> numbers above I'd say that a "emerge -uD world"/"paludis -i world" |
46 |
> will |
47 |
> be at least twice as slow, which I think is not acceptable. |
48 |
|
49 |
You mean 0.3% (or less) of the emerge world time? |
50 |
|
51 |
> |
52 |
> And I also don't understand your point of stating it's "bad design". |
53 |
> I mean: when coding you should "not optimize prematurely", but with |
54 |
> eapi-in-ebuild it is against the other principle of "not pessimize |
55 |
> prematurely" (Sutter/Alexandrescu: C++ Coding Standards). |
56 |
|
57 |
Coding Standards (whatever language) are not relevant. My point comes |
58 |
from Systems Design, before your write the Systems Requirement Document |
59 |
and the System Implementation Plan and even the Top Level Design |
60 |
document. ... thats a long time before you write any code. |
61 |
|
62 |
I am against *all* and any metadata in the filename. Today, GLEP 55 |
63 |
proposes the add the EAIP, tomorrow, there will be something else, |
64 |
the day after another thing ... and all because allowing EAPI set the |
65 |
precedent. |
66 |
|
67 |
You also make the error of assuming that with eapi-in-ebuild the |
68 |
currently suggested approaches to extracting the EAPI from the ebuild |
69 |
are the best and remain unchanged. Thats unlikely, as not a lot of work |
70 |
has been done it yet. |
71 |
> |
72 |
> |
73 |
> -- |
74 |
> Tiziano Müller |
75 |
> Gentoo Linux Developer, Council Member |
76 |
> Areas of responsibility: |
77 |
> Samba, PostgreSQL, CPP, Python, sysadmin, GLEP Editor |
78 |
> E-Mail : dev-zero@g.o |
79 |
> GnuPG FP : F327 283A E769 2E36 18D5 4DE2 1B05 6A63 AE9C 1E30 |
80 |
> |
81 |
|
82 |
- -- |
83 |
Regards, |
84 |
|
85 |
Roy Bamford |
86 |
(NeddySeagoon) a member of |
87 |
gentoo-ops |
88 |
forum-mods |
89 |
treecleaners |
90 |
trustees |
91 |
-----BEGIN PGP SIGNATURE----- |
92 |
Version: GnuPG v2.0.11 (GNU/Linux) |
93 |
|
94 |
iEYEARECAAYFAkoe0DYACgkQTE4/y7nJvasUGwCglincQpLkCw7C09Z4zNTY1PL1 |
95 |
s1gAoK7NTbOl5tdGOngtufe81ocwNRXp |
96 |
=Ru66 |
97 |
-----END PGP SIGNATURE----- |