[CentOS] Kernel ELsmp vs EL

Fri Sep 8 17:27:38 UTC 2006
J.J. Garcia <stigmatedbrain at gmail.com>

El vie, 08-09-2006 a las 10:05 -0400, Matthew Miller escribió:
> On Fri, Sep 08, 2006 at 10:59:10AM +0800, John Summerfield wrote:
> > It's not all loss. I have a small benchmark written in Perl to exercise 
> > the CPU a little.
> [...]
> > use integer;
> 
> This excercises the CPU only a very, very little -- a tight loop of integer
> math with no system calls or anything.
> 
> Change this to do floating point math and watch what happens.

Hi folks,

Just for fun i found at http://samba.org/junkcode/ an interesting and
simple test http://samba.org/ftp/unpacked/junkcode/speed.c which i
compiled as follows:

[root at sparkbox bin]# export LANG=C; gcc -v -O2 -lm -o speed speed.c;
export LANG=es_ES.UTF-8
Reading specs from /usr/lib/gcc/i386-redhat-linux/3.4.5/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --
infodir=/usr/share/info --enable-shared --enable-threads=posix --
disable-checking --with-system-zlib --enable-__cxa_atexit --disable-
libunwind-exceptions --enable-java-awt=gtk --host=i386-redhat-linux
Thread model: posix
gcc version 3.4.5 20051201 (Red Hat 3.4.5-2)
 /usr/libexec/gcc/i386-redhat-linux/3.4.5/cc1 -quiet -v speed.c -quiet -
dumpbase speed.c -auxbase speed -O2 -version -o /tmp/ccNWoHQq.s
ignoring nonexistent directory "/usr/lib/gcc/i386-redhat-
linux/3.4.5/../../../../i386-redhat-linux/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /usr/lib/gcc/i386-redhat-linux/3.4.5/include
 /usr/include
End of search list.
GNU C version 3.4.5 20051201 (Red Hat 3.4.5-2) (i386-redhat-linux)
        compiled by GNU C version 3.4.5 20051201 (Red Hat 3.4.5-2).
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-
heapsize=131072
 as -V -Qy -o /tmp/ccoiuoVT.o /tmp/ccNWoHQq.s
GNU assembler version 2.15.92.0.2 (i386-redhat-linux) using BFD version
2.15.92.0.2 20040927
 /usr/libexec/gcc/i386-redhat-linux/3.4.5/collect2 --eh-frame-hdr -m
elf_i386 -dynamic-linker /lib/ld-linux.so.2 -o speed /usr/lib/gcc/i386-
redhat-linux/3.4.5/../../../crt1.o /usr/lib/gcc/i386-redhat-
linux/3.4.5/../../../crti.o /usr/lib/gcc/i386-redhat-
linux/3.4.5/crtbegin.o -L/usr/lib/gcc/i386-redhat-linux/3.4.5 -
L/usr/lib/gcc/i386-redhat-linux/3.4.5 -L/usr/lib/gcc/i386-redhat-
linux/3.4.5/../../.. -lm /tmp/ccoiuoVT.o -lgcc --as-needed -lgcc_s --no-
as-needed -lc -lgcc --as-needed -lgcc_s --no-as-
needed /usr/lib/gcc/i386-redhat-linux/3.4.5/crtend.o /usr/lib/gcc/i386-
redhat-linux/3.4.5/../../../crtn.o


Here are the results for mentionned host using acpi=ht,

[root at sparkbox bin]# time speed & time speed & wait
[1] 29836
[2] 29838
Floating point - sin() - 10.3853 MOPS
Floating point - log() - 8.67528 MOPS
Floating point - sin() - 1.93525 MOPS
Floating point - log() - 9.25754 MOPS

Memcpy - 1kB - 2542.87 Mb/S
Memcpy - 1kB - 1238.97 Mb/S
Memcpy - 100kB - 1933.49 Mb/S
Memcpy - 100kB - 2237.83 Mb/S
Memcpy - 1MB - 735.953 Mb/S
Memcpy - 1MB - 783.704 Mb/S
Memcpy - 10MB - 547.606 Mb/S
Adding integers - 563.318 MOPS
Memcpy - 10MB - 534.85 Mb/S
Adding integers - 488.456 MOPS
Adding floats (size 4) - 74.4939 MOPS
Adding doubles (size 8) - 59.9683 MOPS

real    0m4.887s
user    0m2.431s
sys     0m0.063s
Adding floats (size 4) - 22.3984 MOPS
[1]-  Exit 13                 time speed
Adding doubles (size 8) - 46.3919 MOPS

real    0m5.005s
user    0m2.389s
sys     0m0.056s
[2]+  Exit 13                 time speed
[root at sparkbox bin]#
[root at sparkbox bin]# time speed
Floating point - sin() - 10.6428 MOPS
Floating point - log() - 8.5237 MOPS
Memcpy - 1kB - 3440.33 Mb/S
Memcpy - 100kB - 3964.34 Mb/S
Memcpy - 1MB - 1585.58 Mb/S
Memcpy - 10MB - 971.622 Mb/S
Adding integers - 608.727 MOPS
Adding floats (size 4) - 48.3473 MOPS
Adding doubles (size 8) - 66.073 MOPS

real    0m2.622s
user    0m2.212s
sys     0m0.052s

[root at sparkbox bin]#

I know there's a new release of gcc in U4 and im still using the old
4.3, but in next weeks ill do the update...

Good weekend all,

Jose