Eric Dumazet 8af27e1dc4 fixdep: use hash table instead of a single array
I noticed fixdep uses ~2% of cpu time in kernel build, in function
use_config()

fixdep spends a lot of cpu cycles in linear searches in its internal
string array. With about 400 stored strings per dep file, this begins to
be noticeable.

Convert fixdep to use a hash table.

kbuild results on my x86_64 allmodconfig

Before patch :

real	10m30.414s
user	61m51.456s
sys	8m28.200s

real	10m12.334s
user	61m50.236s
sys	8m30.448s

real	10m42.947s
user	61m50.028s
sys	8m32.380s

After:

real	10m8.180s
user	61m22.506s
sys	8m32.384s

real	10m35.039s
user	61m21.654s
sys	8m32.212s

real	10m14.487s
user	61m23.498s
sys	8m32.312s

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Michal Marek <mmarek@suse.cz>
2010-11-11 17:12:06 +01:00
..
2005-04-16 15:20:36 -07:00
2010-07-21 16:06:05 +02:00
2005-04-16 15:20:36 -07:00
2007-12-17 19:28:17 -08:00
2010-03-07 21:19:09 +01:00
2010-03-07 21:22:56 +01:00
2008-07-25 22:12:41 +02:00
2009-06-09 22:37:54 +02:00
2010-03-23 12:26:38 +01:00
2009-09-15 17:04:38 -07:00
2008-04-25 20:18:48 +02:00
2005-04-16 15:20:36 -07:00
2010-03-07 21:38:32 +01:00
2009-06-09 22:37:54 +02:00