[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: BD-Uninstallable performance.



Hi,

Am Dienstag, den 04.08.2009, 22:31 +0200 schrieb Kurt Roeckx:
> On Mon, Aug 03, 2009 at 09:45:17PM +0200, Joachim Breitner wrote:
> > > am Mon, Aug 03, 2009 at 12:43:15AM +0200 hast du folgendes geschrieben:
> > > > It seems that for the few days this has been running now, all
> > > > arches started to pick up alot of the BD-Uninstallable state,
> > > > some around 30-50, which is great.
> > > > But it seems the time of "trigger.often" has gone up alot because
> > > > of this, starting to take around 11-12 minutes to run, from the 2-3
> > > > minutes it used to take before the patch and 7-8 when the patch started.
> > > 
> > I assume that most of the time is spent generating the fake source file
> > (in wanna-build), then feeding that to edos-builddebcheck (perl) which
> > uses add_sources (python) to transform it to a Packages file. The
> > actualy edos-debcheck run is not the bottle neck. This should be easily
> > verifiable by observing "ps -A".
> 
> It takes about 2 minutes to run the keep-latest script
> for all arches.

Not sure if it can be considerably sped up without doing something
compiled – perl ought to be pretty good with regexes, and not much more
is happening here.

> It seems edos-debcheck takes about 18 seconds cpu time per arch,
> which is about:
> - 4 seconds "Parsing package file"
> - 9 seconds "Generating constraints"
> - 5 seconds "Checking packages"
> 
> It seems that armel takes about 10 seconds instead of 5
> to check the packages.
> 
> Which 13 arches, this takes about 4 minutes, which leaves
> about 3 additional minutes over the original.  I'm not sure yet
> how long each step of that takes.

These three minutes are likely the generation of the fake source file
and add_sources.py.

Is the machine a multi-CPU one? In that case we could ease the problem
(until a version of edos-debcheck with Sources support has appeared and
backported) by running the loop in trigger.daily in parallel. Some code
suggestions for that are at:
http://pebblesinthesand.wordpress.com/2008/05/22/a-srcipt-for-running-processes-in-parallel-in-bash/



Greetings,
Joachim
-- 
Joachim "nomeata" Breitner
Debian Developer
  nomeata@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C
  JID: nomeata@joachim-breitner.de | http://people.debian.org/~nomeata

Attachment: signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil


Reply to: