Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 457760 - emerge -v to print expected total build time according to emerge.log?
Summary: emerge -v to print expected total build time according to emerge.log?
Status: UNCONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All Linux
: Normal enhancement
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-15 22:00 UTC by Roman Žilka
Modified: 2013-02-16 10:08 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Roman Žilka 2013-02-15 22:00:42 UTC
"emerge -v" could use emerge.log to print expected total build time along with the list of packages to be merged (i.e., before any merging begins). Would be useful esp. along with "-p".

===============================================================

Today:
# emerge -pvuDN world

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] app-emulation/emul-linux-x86-baselibs-20121202 [20121028] USE="-development" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-db-20121202 [20121028] USE="-development" 0 kB
[ebuild   R    ] mail-client/mutt-1.5.21-r1  USE="berkdb crypt gdbm gnutls idn imap mbox nls ssl -debug -doc -gpg -nntp -pop -qdbm -sasl* -sidebar -smime -smtp* -tokyocabinet" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-xlibs-20121202 [20121028] USE="opengl -development" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-opengl-20121202-r1 [20121028] USE="-development" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-gtklibs-20121202 [20121028] USE="-development" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-medialibs-20121202 [20121028] USE="-development" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-soundlibs-20121202 [20121028] USE="alsa -development" 0 kB
[ebuild     U  ] app-emulation/emul-linux-x86-sdl-20121202 [20121028] USE="-development" 0 kB

Total: 9 packages (8 upgrades, 1 reinstall), Size of downloads: 0 kB

===============================================================

Tomorrow?:

# emerge -pvuDN world

These are the packages that would be merged, in order:

(...)

Total: 9 packages (8 upgrades, 1 reinstall), Size of downloads: 0 kB, Estimated merge time: 1 min 53 s

Reproducible: Always
Comment 1 Rafał Mużyło 2013-02-16 02:15:48 UTC
You mean "expected total build time in Microsoft minutes" ?
Cause given ccache/distcc and a few other random factors, that's the best you'd get.
Comment 2 Roman Žilka 2013-02-16 10:00:29 UTC
Yes, the factors. What could those be:
* distcc: minority of users, I think; I have no experience with it, but if you say it's a problem, it's a problem.
* ccache: same story, but is this really such a huge factor? There would surely be an impact when this be turned on/off completely, but how often would one do that?
* Different USE flags / pkg version: negligible in my experience, unless you, for some strange reason, literally invert the USE flag settings for a lot of packages.
* Sources fetched/absent: only significantly affects a few packages; we've got the parallel fetch now; for most cases no big deal.
* FEATURES="test" turned on/off (differently): this is a destroyer, but how many times in your life do you do it and how many packages do you actually emerge with the changed setting? One may have to rotate emerge.log in this case.
* Other changes in make.conf: either not serious effect, or changing only rarely/never.
* Different amount of CPU time available: implications of this are somewhat hard to predict for me, but would this really be any kind of problem for most cases?
* What else?

I'm still seeing a good feature. The special cases (features=test on/off, ccache on/off, adding/removing entire CPUs and -j1 <-> -j3, distcc) would be noted in the manpage. Admins would know where the estimation is coming from and they would immediately whether to pay attention to it or not. The important thing is that there would presumably be (considerably?) fewer of the latter kind of admins.
Comment 3 Roman Žilka 2013-02-16 10:08:21 UTC
Also consider how easy it would be to implement (the parsing code is there already) and how negligible impact on the output and processing time of emerge it would have. Yet, what a nice little thing to have.