Gentoo Archives: gentoo-dev

From: Stewart Honsberger <blkdeath@g.o>
To: Chris Gianelloni <wolf31o2@g.o>
Cc: "Håvard Wall" <haavardw@×××××××.no>, gentoo-dev@g.o, werner.van.belle@××××××.be
Subject: Re: [gentoo-dev] compile time statistics
Date: Tue, 05 Aug 2003 16:03:43
Message-Id: 3F2FD54F.1010505@gentoo.org
In Reply to: Re: [gentoo-dev] compile time statistics by Chris Gianelloni
1 Chris Gianelloni wrote:
2 > To be anywhere near the correct answer you would need to know:
3 > - CPU type
4 > - CPU speed
5 > - Number of CPUs
6 > - MAKEOPTS
7 > - USE flags
8 > - Some of the CFLAGS, particularly -march and -O
9
10 I'm seeing a matrix of information stored in a database. With Gentoo
11 being so dynamic, we could have a stats component check each of the
12 variables and take a sampling of similar system configurations in the
13 database.
14
15 What I forsee (correct me if this has already been discussed; I'm only
16 getting around to reading this list seriously now after some time
17 working long hours) goes along the lines of this;
18
19 Integrate stats into Portage somehow so that it becomes transparent.
20 Perhaps even a module that can be merged separately of Portage.
21 Otherwise, were it merged directly into Portage itself, we have a
22 make.conf flag that enables stats. We inform the user, naturally, what
23 stats will be taken, how they will be processed, and where they will be
24 stored. We inform users that stats are a two-way street. Much like the
25 GPL, you can't take without giving. If you want a figure on how long
26 each item should take to compile, you have to permit the sending of how
27 long it TOOK to compile on your system to add to the numbers in the
28 database.
29
30 As with any statistical reporting, I also see a system whereby numbers
31 that are really off-base with the rest of the numbers in the same
32 category be disgarded. If my Athlon XP 1800+ system reports that it took
33 >48 or <2 hours to compile OpenOffice, for example, that number would
34 be thrown away as somehow invalid.
35
36 In this matrix we could include a variable for 'ccache', which would
37 give us a good baseline of how well ccache helps compile times. For
38 example, my system some time ago would be reported / queried using;
39
40 CPU = AMD Athlon 1800+
41 RAM = 512MB DDR
42 CC = gcc (GCC) 3.2.2
43 CFLAGS = CFLAGS="-march=athlon-xp -Os -pipe -mfpmath=sse,387"
44 CCACHE = yes
45
46 Perhaps the logic used in "emerge -v {package}" could be incorporated to
47 find systems with similar USE flags. Obviously nomozillamail et al. will
48 decrease Mozilla's compile time.
49
50 (Depositing $0.02 on table)
51
52 --
53 Stewart Honsberger
54 Gentoo Developer
55 http://www.snerk.org/
56
57
58 --
59 gentoo-dev@g.o mailing list