Re: [CentOS] Kernel ELsmp vs EL

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



Jim Perrin wrote:

Awesome... Next server has HT.. So I'll give that a try!


Keep in mind that HT is its own special brand of hell, and isn't
really *true* SMP. The kernel will work fine, and you'll see 2x the
processors, but at most you'll get about a 3% performance boost, and
at worst, it'll actually hurt performance. Some motherboards have
buggy HT implementations and may cause some locking or slowness.
Sometimes this can be resolved by appending apci=ht to your kernel
boot line. With HT you also have the possibility of cache thrashing,
which can/will impact performance. Make sure you know what you're
getting into.



It's not all loss. I have a small benchmark written in Perl to exercise the CPU a little.
I have here two muts (machines under test),
Mopoke's a Dell Pentium IV 3.00 with HT enabled, running Suse 10.1.
Bilby's a Sempron 2500+, so it's a bit slower. Also, it's running roughly Nahant, so compiled with older (slower?) gcc and different perl.

What I'm illustrating here is the difference HT can make:


summer@Mopoke:~> time bm.perl&time bm.perl&wait
[1] 3480
[2] 3481

real    0m23.935s
user    0m23.689s
sys     0m0.004s

real    0m25.906s
user    0m24.746s
sys     0m0.004s
[1]-  Done                    time bm.perl
[2]+  Done                    time bm.perl
summer@Mopoke:~>
[summer@bilby ~]$ time bm.perl&time bm.perl&wait
[1] 10099
[2] 10100

real    0m49.343s
user    0m24.287s
sys     0m0.011s

real    0m49.371s
user    0m24.405s
sys     0m0.013s
[1]-  Done                    time bm.perl
[2]+  Done                    time bm.perl
[summer@bilby ~]$


Note that on mopoke, user for each is about equal to elapsed, about what one wout expect with dual-core or SMP.

On Bilby, user for each is about half elapsed, just as one would expect.

For those who like to play by themselves, here's the code:

[summer@bilby ~]$ cat bin/bm.perl
#!/usr/bin/perl
use integer;
$i = 0;
while ($i < 10000)
        {
                $j = 0;
                while ($j < 10000)
                        {
                                ++$j;
                        }
                ++$i;
        }

[summer@bilby ~]$







--

Cheers
John

-- spambait
1aaaaaaa@xxxxxxxxxxxxxxxx  Z1aaaaaaa@xxxxxxxxxxxxxxxx
Tourist pics http://portgeographe.environmentaldisasters.cds.merseine.nu/

Please do not reply off-list
_______________________________________________
CentOS mailing list
CentOS@xxxxxxxxxx
http://lists.centos.org/mailman/listinfo/centos

[Index of Archives]     [CentOS]     [CentOS Announce]     [CentOS Development]     [CentOS ARM Devel]     [CentOS Docs]     [CentOS Virtualization]     [Carrier Grade Linux]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Linux USB]
  Powered by Linux