From: Erik P. <epa...@cs...> - 2000-11-19 07:14:21
|
Hello, I've run lmbench through a UML session, and again natively on a PIII machine here to see how things looked. It's not totally fair, I should have probably mounted the lmbench directory over the loopback device on the native kernel, and I think I've got some memory stuff misconfigured (UML blew up when I tried to tell it lmbench that it had more than 10 megs of RAM, so I think I'm missing a command-line flag or something. It also failed in alloc_pages during a run, but I haven't had a chance to take a look at that) Has anyone else taken a look at some benchmarks? The machine I'm using is a 650mhz PIII with 512 megs of RAM, and a 10gig IDE drive (I'll have to ask around to see who made it). I'm using UML 2.4.0-test10 as downloaded off the website tonight (18 Nov), on a 2.2.16smp host. This work is for CS736 (Operating Systems) here at the University of Wisconsin.My project involves using UML as a testbed for secure sandboxing and process migration in a distributed system, and we're trying to get a feeling for some performance numbers. I'm going to be running SPEC through soon as well, since many of our target apps are CPU-bound and shouldn't hit into the OS too much (except for VM-issues) Thanks, and I'm looking forward to your comments. -Erik (lmbench can be found at: http://www.bitmover.com/lmbench/ ) L M B E N C H 2 . 0 S U M M A R Y ------------------------------------ (Alpha software, do not distribute) Basic system parameters ---------------------------------------------------- Host OS Description Mhz --------- ------------- ----------------------- ---- perdita.c Linux 2.2.16- i686-pc-linux-gnu 652 uml Linux 2.4.0-t i686-pc-linux-gnu 650 Processor, Processes - times in microseconds - smaller is better ---------------------------------------------------------------- Host OS Mhz null null open selct sig sig fork exec sh call I/O stat clos TCP inst hndl proc proc proc --------- ------------- ---- ---- ---- ---- ---- ----- ---- ---- ---- ---- ---- perdita.c Linux 2.2.16- 652 0.5 0.8 4.9 6.2 28 1.4 2.1 0.2K 1.2K 27.K uml Linux 2.4.0-t 650 25.8 35.4 64.5 101. 36.2 105. 8.3K 16.K 47.K Context switching - times in microseconds - smaller is better ------------------------------------------------------------- Host OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw ctxsw --------- ------------- ----- ------ ------ ------ ------ ------- ------- perdita.c Linux 2.2.16- 1 5 10 28 uml Linux 2.4.0-t 359 368 418 413 *Local* Communication latencies in microseconds - smaller is better ------------------------------------------------------------------- Host OS 2p/0K Pipe AF UDP RPC/ TCP RPC/ TCP ctxsw UNIX UDP TCP conn --------- ------------- ----- ----- ---- ----- ----- ----- ----- ---- perdita.c Linux 2.2.16- 1 7 13 26 41 132 uml Linux 2.4.0-t 359 693 782 File & VM system latencies in microseconds - smaller is better -------------------------------------------------------------- Host OS 0K File 10K File Mmap Prot Page Create Delete Create Delete Latency Fault Fault --------- ------------- ------ ------ ------ ------ ------- ----- ----- perdita.c Linux 2.2.16- 9 1 19 2 636 1 0.5K uml Linux 2.4.0-t 24 8 169 12 2772 0.1K *Local* Communication bandwidths in MB/s - bigger is better ----------------------------------------------------------- Host OS Pipe AF TCP File Mmap Bcopy Bcopy Mem Mem UNIX reread reread (libc) (hand) read write --------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- ----- perdita.c Linux 2.2.16- 524 270 76 373 468 181 142 482 160 uml Linux 2.4.0-t 6 35 -1 270 460 187 150 460 190 Memory latencies in nanoseconds - smaller is better (WARNING - may not be correct, check graphs) --------------------------------------------------- Host OS Mhz L1 $ L2 $ Main mem Guesses --------- ------------- ---- ----- ------ -------- ------- perdita.c Linux 2.2.16- 652 4.60 10.76 122.4 uml Linux 2.4.0-t 650 4.64 10.86 194.1 |