Bochs/bochs-performance/NOTES

163 lines
6.8 KiB
Plaintext

Collect a number of different binaries compiled with different options,
all based on 1.2.pre1. Develop some process, such as booting linux,
compressing some big file, and then rebooting that takes a while.
Time how long each binary takes to execute that task.
Problems with reboot!
1.2.pre1 didn't actually do reboot right!!!!!!!!!
what a pain, all these binaries are compiled by hand.
Maybe I can make a script to compile them all again.
patch -p0 <<EOF
wefji
wefj
EOF
rm main.cc; cvs upd main.cc
etc.
bochs000: 1.2, no args
bochs001: 1.2, no args, change CPU SMF=0
bochs002: 1.2, no args, change all SMFs=0
bochs004: 1.2, --with-nogui
bochs005: 1.2, --enable-debugger
bochs006: 1.2, --enable-cdrom --enable-sb16=linux --enable-debugger
bochs007: 1.2, NO_LOGGING defined in bochs.h
bocsh008: 1.2, no compile args
bocsh008a: 1.2, -O2 -fomit-frame-pointer
bocsh008b: 1.2, -O6 -fomit-frame-pointer
bochs010: 1.2, --enable-processors=2
bochs011: 1.2, --enable-processors=2 --enable-debugger
bochs015: 1.2, --enable-processors=4
bochs016: 1.2, --enable-processors=4 --enable-debugger
bochs020: 1.1.2, no args
bochs021: 1.1.2, --enable-debugger
bochs030: 3/25/2000, --enable-fpu
bochs031: 3/25/2000, --enable-fpu --enable-debugger
First Results
bochs000 22.26user 0.33system 0:23.70elapsed
bochs001 21.44user 0.26system 0:22.09elapsed
bochs002 21.90user 0.21system 0:22.42elapsed
bochs004 21.49user 0.23system 0:21.86elapsed
bochs005 21.63user 0.29system 0:22.25elapsed
bochs006 30.05user 0.33system 0:30.99elapsed
bochs007 21.38user 0.23system 0:21.95elapsed
bochs008 34.15user 0.32system 0:34.85elapsed
bochs008a 21.07user 0.24system 0:21.69elapsed
bochs008b 21.50user 0.33system 0:22.13elapsed
bochs010 23.51user 0.36system 0:24.19elapsed
bochs011 31.10user 0.38system 0:31.86elapsed
bochs015 26.82user 0.24system 0:27.43elapsed
bochs020 23.59user 0.44system 0:26.18elapsed
bochs021 29.27user 0.45system 0:30.29elapsed
bochs030 17.55user 0.33system 0:18.17elapsed
bochs031 21.69user 0.33system 0:22.49elapsed
../bochs000 21.76user 0.26system 0:22.28elapsed
../bochs001 21.41user 0.26system 0:21.89elapsed
../bochs002 21.91user 0.26system 0:22.35elapsed
../bochs004 21.49user 0.21system 0:21.88elapsed
../bochs005 21.70user 0.35system 0:22.44elapsed
../bochs006 29.99user 0.51system 0:31.17elapsed
../bochs007 21.29user 0.27system 0:21.96elapsed
../bochs008 34.32user 0.29system 0:34.95elapsed
../bochs008a 21.13user 0.25system 0:21.73elapsed
../bochs008b 21.66user 0.29system 0:22.28elapsed
../bochs010 23.69user 0.29system 0:24.25elapsed
../bochs011 31.18user 0.50system 0:32.03elapsed
../bochs015 27.21user 0.27system 0:27.82elapsed
../bochs016 35.36user 0.44system 0:36.15elapsed
../bochs020 21.82user 0.31system 0:22.45elapsed
../bochs021 29.34user 0.44system 0:30.13elapsed
../bochs030 17.69user 0.25system 0:18.27elapsed
../bochs031 21.80user 0.29system 0:22.58elapsed
Results from a short Linux-x86 test:
% performance
compared to
name seconds 3/25/2000 What is it
../bochs000 22.28 82.00 1.2: no args
../bochs001 21.89 83.46 1.2: turn off SMF for CPU only, improvement
../bochs002 22.35 81.74 1.2: turn off SMF for all, reduction!!
../bochs004 21.88 83.50 1.2: nogui
../bochs005 22.44 81.41 1.2: debugger
../bochs006 32.58 56.08 1.2: cdrom, sb16, debugger
../bochs006a 22.80 80.13 1.2: cdrom
../bochs006b 23.03 79.33 1.2: sb16
../bochs006c 23.49 77.78 1.2: cdrom, sb16
../bochs006d 22.59 80.87 1.2: none
../bochs006e 31.21 58.53 1.2: cdrom, debugger
../bochs006f 30.73 59.45 1.2: sb16, debugger
../bochs007 21.96 83.19 1.2: no logging helped a tiny bit
../bochs008 34.95 52.27 1.2: without optimization, bad
../bochs008a 21.73 84.07 1.2: -O2 without -g good
../bochs008b 22.28 82.00 1.2: -O6 didn't help a bit
../bochs010 24.25 75.34 1.2: 2 processors
../bochs011 32.03 57.04 1.2: 2 processors + debugger
../bochs015 27.82 65.67 1.2: 4 processors
../bochs016 36.15 50.53 1.2: 4 processors + debugger
../bochs020 17.94 101.84 1.1.2: no args
../bochs021 22.44 81.42 1.1.2: debugger
../bochs030 18.27 100.00 3/25: no args
../bochs031 22.58 80.91 3/25: debugger
../bochs091 20.91 87.37 cvs, never exit cpu_loop
../bochs092 19.03 96.01 cvs, use bx_mem and bx_cpu instead of array
../bochs093 19.12 95.55 use bx_mem and bx_cpu instead of array
../bochs094 27.63 66.12 use bx_mem and bx_cpu instead of array, 4proc
Result from a longer Linux-alpha test.
Workload:
boot DLX linux
find / > /dev/null
cd /
tar czvf - `find etc var lib` > /dev/null
reboot
Performance
relative to
Binary Seconds 1.1.2 Description
-------- ------ ------- ----------------------------------
bochs000 490.10 85.23% 1.2: no args
bochs001 467.61 89.33% 1.2: turn off SMF for CPU only (WHY BETTER!?)
bochs002 527.61 79.17% 1.2: turn off SMF for all
bochs004 472.87 88.34% 1.2: --with-nogui
bochs005 650.44 64.23% 1.2: debugger
bochs006 660.06 63.29% 1.2: cdrom, sb16, debugger
bochs006a 486.59 85.85% 1.2: cdrom
bochs006b 487.76 85.65% 1.2: sb16=linux
bochs006c 497.91 83.90% 1.2: cdrom, sb16=linux
bochs006d 493.88 84.58% 1.2: none, same as bochs000
bochs006e 691.04 60.45% 1.2: cdrom, debugger
bochs006f 648.44 64.42% 1.2: sb16=linux, debugger
bochs007 466.31 89.58% 1.2: compiled out log code, helped a tiny bit
bochs008 947.19 44.10% 1.2: CFLAGS="", no optimization, bad
bochs008a 488.01 85.60% 1.2: -O2 without -g
bochs008b 500.74 83.42% 1.2: -O6 didn't help a bit
bochs010 499.31 83.66% 1.2: 2 processors
bochs011 662.13 63.09% 1.2: 2 processors + debugger
bochs015 554.39 75.35% 1.2: 4 processors
bochs016 693.52 60.23% 1.2: 4 processors + debugger
bochs020 417.76 100.00% 1.1.2: with no args
bochs021 552.67 75.58% 1.1.2: --enable-debugger
bochs040 396.59 105.33% no-cpu-array: no args
bochs040 404.18 103.36% no-cpu-array: no args
bochs041 464.13 90.01% no-cpu-array: disable SMF in CPU only
bochs041 475.07 87.94% no-cpu-array: disable SMF in CPU only
bochs042 431.51 96.81% no-cpu-array: disable SMF in all but CPU
bochs042 438.55 95.26% no-cpu-array: disable SMF in all but CPU
bochs043 435.83 95.85% no-cpu-array: disable all SMF
bochs043 438.05 95.37% no-cpu-array: disable all SMF
bochs045 491.15 85.06% no-cpu-array: 2 processors
bochs046 673.29 62.05% no-cpu-array: 2 processors + debugger
bochs047 576.93 72.41% no-cpu-array: 4 processors
bochs048 679.53 61.48% no-cpu-array: 4 processors + debugger
bochs091 450.86 92.65% cvs: stay-in-cpu-loop-for-1proc
bochs092 417.04 100.17% cvs: no-cpu-array-for-1proc (CURRENT)