On Sun, Jan 26, 2014 at 6:35 AM, Nikos Chantziaras <rea...@gmail.com> wrote: > Anyone else noticed this yet? Some portage update seems to have made "emerge > -uDN @world" perform about 10 times slower than before. It used to take > seconds, now it takes about 4 minutes only to tell me that there's nothing > to update. And it does that every time, even directly in succession and with > the caches warm. > > Is it just me?
Usually this occurs when you have done something that causes portage to stop using the metadata that rolls in via rsync. The classic example of something that will cause this is setting some eclass-overrides in /etc/portage/repos.conf. As of yesterday, portage still performed tolerably on a relatively vanilla base system. That stated, you're not hallucinating. Portage is slow as tar. I suspect it's getting slower at least partially as a result of the recent explosion of multilib-build-based ebuilds for multimedia and x11 library ebuilds, and perhaps also due to those nasty emul-linux-x86 blockers (a problem that will eventually be resolved, Larry-The-Cow-God-willing, within a year or three) that are placing higher and higher demands on portage's depsolving engine, as time passes. Having lots and lots of packages installed is a huge factor here. This may be because, by default, portage uses installed packages to calculate dependencies, resulting in a need to re-cache lots of stuff... I'm a bit fuzzy on exactly what criteria are used to determine when this happens, tbh.. that's something I've been meaning to look into. Adding something like: EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --backtrack=5" EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --complete-graph=n" EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --complete-graph-if-new-use=n" EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --complete-graph-if-new-ver=n" EMERGE_DEFAULT_OPTS="${EMERGE_DEFAULT_OPTS} --with-bdeps=n" to you /etc/portage/make.conf may help, as may running emerge --metadata and/or egencache on your repos. after syncing... but... these are no panacea. Sometimes emerge -O is the only way to get some things done in any reasonable time-frame. It would help if there were some decent way to get some statistics about where portage is spending all its time (especially, I suspect, within the bash code, but the python level would also be interesting to analyse). Anyone know of a good way of doing that? -gmt