[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: HT schedulers' performance on single HT processor


Con Kolivas wrote:
> I set out to find how the hyper-thread schedulers would affect the all 
> important kernel compile benchmark on machines that most of us are likely to 
> encounter soon. The single processor HT machine.
> 
> Usual benchmark precautions taken; best of five runs (curiously the fastest 
> was almost always the second run). Although for confirmation I really did 
> this twice.
> 
> Tested a kernel compile with make vmlinux, make -j2 and make -j8. 
> 
> make vmlinux - tests to ensure the sequential single threaded make doesn't 
> suffer as a result of these tweaks
> 
> make -j2 vmlinux - tests to see how well wasted idle time is avoided
> 
> make -j8 vmlinux - maximum throughput test (4x nr_cpus seems to be ceiling for 
> this).
> 
> Hardware: P4 HT 3.066
> 
> Legend:
> UP - Uniprocessor 2.6.0-test11 kernel
> SMP - SMP kernel
> C1 - With Ingo's C1 hyperthread patch
> w26 - With Nick's w26 sched-rollup (hyperthread included)
> 
> make vmlinux
> kernel	time
> UP	65.96
> SMP	65.80
> C1	66.54
> w26	66.25
> 
> I was concerned this might happen and indeed the sequential single threaded 
> compile is slightly worse on both HT schedulers. (1)
> 
> make -j2 vmlinux
> kernel	time
> UP	65.17
> SMP	57.77
> C1	66.01
> w26	57.94
> 
> Shows the smp kernel nicely utilises HT whereas the UP kernel doesn't. The C1 
> result was very repeatable and I was unable to get it lower than this.(2)
> 
> make -j8 vmlinux
> kernel	time
> UP	65.00
> SMP	57.85
> C1	58.25
> w26	57.94

If you could make one more test, do the compile with -pipe set in the 
top level Makefile. I don't have play access to a HT uni, the only 
machines available to me at the moment are SMP and production at that.

I did try it just for grins on a non-HT uni and saw this:

opt		real	user	sys	idle
-j1		406.2	308.1	19.0	79.1
-j1 -pipe	398.6	308.2	19.0	71.4
-j3		391.6	308.3	19.0	64.3
-j3 -pipe	388.7	308.4	19.0	61.3

P4-2.4MHz, 256MB, compiling 2.5.47-ac6 with just "make." Using -pipe 
*may* allow both siblings to cooperate better.

I assume that CPU affinity should apply to all siblings in a package?

-- 
bill davidsen <davidsen _at_ tmr.com>
   CTO TMR Associates, Inc
   Doing interesting things with small computers since 1979
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo _at_ vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」