Niels Thykier: > Control: tags -1 patch > > On Thu, 01 Dec 2016 01:59:35 +0100 Simon Richter <s...@debian.org> wrote: >> Package: dpkg >> Version: 1.18.15 >> Severity: minor >> >> Hi, >> >> when building the piglit package, the dpkg-shlibdeps invocations take >> upwards of 30 minutes (on an i7, building inside a tmpfs). Most of the >> time seems to be spent spawning several thousand instances of dpkg-query. >> >> Is there a way to speed this up, e.g. with a cache? >> >> Simon >> >> [...] >> > > Hi, > > I have written the following patch that may be worth applying. It > causes dpkg-shlibdeps to cache the result of get_control_path, which > results in a good speed improvement in my benchmark. > > On the full piglit, it seems to reduce my runtime from about ~14m to ~2m > > Thanks, > ~Niels >
Addendum (plus CC'ing Simon, which I forgot on the previous mail). The slowest part is /still/ dpkg-query --control-path (via get_control_path), but I don't think there is much we can do about that in dpkg-shlibdeps at the moment. Further improvements probably need to come from a faster dpkg-query --control-path or that can be used for bulk loop ups. Thanks, ~Niels