Re: 2.1.32 - performance problems

Peter Leif Rasmussen (
Tue, 8 Apr 1997 21:10:24 -0400

Having complained that not only had I seen a slowdown in the most recent
kernels, but even since release 2.1.26, I was asked to check SMP settings
by some people and also sent a patch from Ingo Molnar.

I then went through compiling all kernels again making sure that all conditions
were the same and that the SMP setting was off (I have a uni-processor host).

Realizing that the previous SMP settings had all been correct, but that I had
been fooled by the use of an EIDE harddisk for my 2.1.x source-trees, I finally
came through with the following timings. Doing such a test-suite makes me
want something faster :-)

My hardware is: Gateway 2000 486DX2/66, 33MHz PCI, 40MB RAM, AHA1542 SCSI,
CMD640 EIDE, Seagate ST1392N and WD AC2700H

/proc/pci has:

Bus 0, device 11, function 0:
IDE interface: CMD 640 (buggy) (rev 2).
Medium devsel. IRQ 14.

Bus 0, device 5, function 0:
Non-VGA device: Intel 82430ZX Aries (rev 2).
Medium devsel. Master Capable. No bursts.

With the linux-2.0.29 source-tree on the SCSI disk (95% full with all .o files)
I got the following times:

Kernel Time to compile simpel 2.0.29 kernel
standard configuration:
2.1.26 37min 10sec
2.1.27 37min 1sec
2.1.28 37min 17sec
2.1.29 37min 6sec
2.1.30 1h 10min 12sec
2.1.31 1h 8min 36sec

Ingo's patch applied:
2.1.31 37min 29sec

Ingo's patch:

/* add this to line 374 of 2.1.3[12] sched.c: */

if ( (!next->pid) && (prev->state==TASK_RUNNING) )
next = prev;
I will therefore have to say that Ingo's patch brings back the performance
to what it was before. Thanks for that Ingo :-)

--------------------- Using EIDE disk ---------------------
What made me very sad, though, was to discover the impact the slowness of the
IDE disk had on compile time. Due to the large RAM size and no other activity
than the compile, i.e. no swapping, it is still this bad. The timings of the
disks should be roughly the same (15mS random access, 5mS Track-Track ?)
This disk is also roughly 95% full when the compile has finished.

Having a linux-2.0.29 configured same as above, with a linux-2.1.30 and then
a linux-2.1.31 tree installed on the Western Digital Caviar AC2700H disk the
following is measured:

Compiling: linux-2.1.30 : 48min 55sec
linux-2.1.31 : 47min 27sec

i.e. about a 30% increase in compile time :-(

With this confirmation of a patch that fixes a problem and an off-topic piece
I will quietly creep back into my hole ;-)


main(){char*s="O_>>^PQAHBbPQAHBbPOOH^^PAAHBJPAAHBbPA_H>BB";int i,j,k,l,m,n;
putchar(l<6-j?' ':l==40-j?'\n':k&&s[n]&k?'*':' ');}