From: Zoran V. <zv...@ar...> - 2006-02-02 10:14:56
|
Am 02.02.2006 um 10:48 schrieb Bernd Eidenschink: > Hi Zoran, > > Am Donnerstag, 2. Februar 2006 10:01 schrieb Zoran Vasiljevic: >> Am 01.02.2006 um 17:15 schrieb Vlad Seryakov: >>> On my machine with tcl 8.4.12 >>> >>> starting 10 malloc threads...waiting....done: 0 seconds, 16003 usec >>> starting 10 ns_malloc threads...waiting....done: 0 seconds, 13207 >>> usec >> >> I've been trying to see why I'm getting worse values with ns_malloc >> as with malloc and it turned out to be that only in 2+CPU box I was >> able to get ns_malloc outperform the malloc. On all single-cpu boxes >> the times were 2 up to 4 times better with plain malloc! > > Single-CPU-box, Tcl 8.4.12; SuSE w/ Kernel 2.6.13-15.7-default. > > starting 10 malloc threads...waiting....done: 0 seconds, 36667 usec > starting 10 ns_malloc threads...waiting....done: 0 seconds, 16620 > usec > >> Does anybody have a single AND multi-cpu box to try out? > > Hyperthreading, but the Kernel sees 2 CPUs: > (Same compilation of NaviServer; Kernel 2.6.13-15.7-smp) > > starting 10 malloc threads...waiting....done: 0 seconds, 13018 usec > starting 10 ns_malloc threads...waiting....done: 0 seconds, 10599 > usec > Damn, I still cannot believe... Can you download the: http://www.archiware.com/www/downloads/memtest.c and compile: gcc -o memtest memtest.c -I/usr/local/include -L/usr/local/lib - ltcl8.4g or (for Tcl w/o symbols) gcc -o memtest memtest.c -I/usr/local/include -L/usr/local/lib - ltcl8.4 and give it a try on both machines? This is what I get on single-cpu: Tcl: 8.4.12 starting 16 malloc threads...waiting....done: 0 seconds, 94103 usec starting 16 ckalloc threads...waiting....done: 0 seconds, 243616 usec and on 2CPU: Tcl: 8.4.12 starting 16 malloc threads...waiting....done: 0 seconds, 435068 usec starting 16 ckalloc threads...waiting....done: 0 seconds, 151250 usec Both are Mac OSX boxes. The single CPU is a 1.5GHz Mac Mini and the 2CPU is a G4 with 2x800Mhz PowerPC. |