Gentoo Archives: gentoo-portage-dev

From: Pacho Ramos <pacho@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Speeding up Tree Verification
Date: Tue, 30 Jun 2020 14:17:14
Message-Id: 2bce098417ba2681574e444f18aabcbbbec445b6.camel@gentoo.org
In Reply to: Re: [gentoo-portage-dev] Speeding up Tree Verification by Fabian Groffen
1 El mar, 30-06-2020 a las 08:20 +0200, Fabian Groffen escribió:
2 > Hi,
3 >
4 > On 29-06-2020 21:13:43 -0500, Sid Spry wrote:
5 > > Hello,
6 > >
7 > > I have some runnable pseudocode outlining a faster tree verification
8 > > algorithm.
9 > > Before I create patches I'd like to see if there is any guidance on making
10 > > the
11 > > changes as unobtrusive as possible. If the radical change in algorithm is
12 > > acceptable I can work on adding the changes.
13 > >
14 > > Instead of composing any kind of structured data out of the portage tree my
15 > > algorithm just lists all files and then optionally batches them out to
16 > > threads.
17 > > There is a noticeable speedup by eliding the tree traversal operations which
18 > > can be seen when running the algorithm with a single thread and comparing it
19 > > to
20 > > the current algorithm in gemato (which should still be discussed here?).
21 >
22 > I remember something that gemato used to use multiple threads, but
23 > because it totally saturated disk-IO, it was brought back to a single
24 > thread. People were complaining about unusable systems.
25 >
26 > In any case, can you share your performance results? What speedup did
27 > you see, on warm and hot FS caches? Which type of disk do you use?
28 >
29 > You could compare against qmanifest, which uses OpenMP-based
30 > paralllelism while verifying the tree. On SSDs this does help.
31 >
32 > Thanks,
33 > Fabian
34
35 I am talking only based on my own experience but, at least on my case, there are
36 noticeable differences between I/O schedulers. That is something that maybe
37 could affect that tests... with latest kernels we only have noop, deadline
38 (default) and bfq... in my case bfq works far better for keeping the system
39 responsible (on both, rotational and SSDs). But you can test different
40 combinations to see the one that fits better for you.

Attachments

File name MIME type
signature.asc application/pgp-signature