Gentoo Archives: gentoo-dev

From: Andrew Savchenko <bircoph@×××××.com>
To: gentoo-dev@l.g.o
Cc: hasufell <hasufell@g.o>
Subject: Re: [gentoo-dev] Portage dependency solving algorithm
Date: Sat, 08 Nov 2014 11:11:21
Message-Id: 20141108141057.67082299599f9b45a3e4ad99@gmail.com
In Reply to: Re: [gentoo-dev] Portage dependency solving algorithm by hasufell
1 On Fri, 07 Nov 2014 20:08:12 +0100 hasufell wrote:
2 > On 11/07/2014 07:54 PM, Matthias Maier wrote:
3 > >> Well, you're not comparing like with like. Paludis with "everything
4 > >> turned off" does more than Portage with "everything turned on". If all
5 > >> you're looking for is the wrong answer as fast as possible, there are
6 > >> easier ways of getting it...
7 > >
8 > > The last time I compared the resolver speed of portage and paludis both
9 > > needed almost the same time.
10 > >
11 > > Do you have a speed comparison with a similar feature set of both? (Or,
12 > > alternatively, the speedup one gains by tuning paludis to be as fast as
13 > > possible).
14 > >
15 >
16 > I think you didn't get the idea: it doesn't make much sense to compare
17 > the speed if the correctness differs.
18 >
19 > Also, I don't understand these discussions. The time dependency
20 > resolving takes is marginal compared to the whole update process, no
21 > matter what PM you use.
22
23 Time required for user's attention differs from time required for
24 CPU to work. During main update process portage just works for a
25 few days (and then I have to deal with failed packages, but that's
26 another story).
27
28 As for dependency resolution during world update, this process is
29 usually iterative: portage failes due to some unsatisfied USE
30 flags, blocks, circular deps and so on. After resolving one of this
31 problems emerge needs to be run one more time and so on. On old
32 hardware iteration takes up to an hour (even with sqlite cache! 1
33 hour of CPU time), so a day or sometimes even two needed just to
34 start actual build process! Now take into account that not always
35 it is possible to spend all day just to start package's building,
36 so world updates spans to weaks...
37
38 With 10x times faster deps resolver it will be possible to handle
39 all these issues in a few hours and let it contiue update on its
40 own.
41
42 Best regards,
43 Andrew Savchenko