vkernel observations and time

Mike Wolman mike at nux.co.uk
Tue Apr 3 13:33:34 PDT 2007


Hi,

I have been playing about with vkernels some more and have noticed
weirdness with time - which i suppose can be more than expected
running in userland.
For example if the real machine is heavily loaded u can get some odd
results when doing stuff in the vkernel:
time sleep 10
0.000u 0.000s 0:27.45 0.0%      0+0k 2+0io 2pf+0w



I was interested to see the performance hit when doing things under
a vkernel. The openssl test runs about 3 times slower in the vkernel
and bonnie is about 1.5 times slower.
Some numbers:

vkernel:

Version: 1.03
vd1# time openssl speed rsa
To get the most accurate results, try to run this
program when this computer is idle.
Doing 512 bit private rsa's for 10s: 5214 512 bit private RSA's in 20.01s
Doing 512 bit public rsa's for 10s: 90278 512 bit public RSA's in 30.05s
Doing 1024 bit private rsa's for 10s: 1002 1024 bit private RSA's in 20.69s
Doing 1024 bit public rsa's for 10s: 28799 1024 bit public RSA's in 30.04s
Doing 2048 bit private rsa's for 10s: 229 2048 bit private RSA's in 29.22s
Doing 2048 bit public rsa's for 10s: 8667 2048 bit public RSA's in 30.01s
Doing 4096 bit private rsa's for 10s: 36 4096 bit private RSA's in 30.21s
Doing 4096 bit public rsa's for 10s: 2479 4096 bit public RSA's in 30.04s
OpenSSL 0.9.8e 23 Feb 2007
built on: Mon Apr  2 20:27:45 BST 2007
options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) blowfish(idx)
compiler: cc
available timing options: USE_TOD HZ=128 [sysconf value]
timing function used: getrusage
                  sign    verify    sign/s verify/s
rsa  512 bits 0.003838s 0.000333s    260.5   3004.3
rsa 1024 bits 0.020647s 0.001043s     48.4    958.6
rsa 2048 bits 0.127594s 0.003462s      7.8    288.8
rsa 4096 bits 0.839179s 0.012118s      1.2     82.5
221.309u 0.564s 3:41.90 99.9%   124+53k 12+0io 16pf+0w


Real:

dfly# time openssl speed rsa
To get the most accurate results, try to run this
program when this computer is idle.
Doing 512 bit private rsa's for 10s: 2610 512 bit private RSA's in 9.98s
Doing 512 bit public rsa's for 10s: 29827 512 bit public RSA's in 9.99s
Doing 1024 bit private rsa's for 10s: 486 1024 bit private RSA's in 10.00s
Doing 1024 bit public rsa's for 10s: 9735 1024 bit public RSA's in 10.01s
Doing 2048 bit private rsa's for 10s: 79 2048 bit private RSA's in 10.02s
Doing 2048 bit public rsa's for 10s: 2912 2048 bit public RSA's in 10.02s
Doing 4096 bit private rsa's for 10s: 12 4096 bit private RSA's in 10.00s
Doing 4096 bit public rsa's for 10s: 830 4096 bit public RSA's in 10.01s
OpenSSL 0.9.8e 23 Feb 2007
built on: Mon Apr  2 20:27:45 BST 2007
options:bn(64,32) md2(int) rc4(idx,int) des(ptr,risc1,16,long) aes(partial) blowfish(idx)
compiler: cc
available timing options: USE_TOD HZ=128 [sysconf value]
timing function used: getrusage
                  sign    verify    sign/s verify/s
rsa  512 bits 0.003822s 0.000335s    261.6   2984.9
rsa 1024 bits 0.020577s 0.001028s     48.6    972.8
rsa 2048 bits 0.126784s 0.003440s      7.9    290.7
rsa 4096 bits 0.833317s 0.012066s      1.2     82.9
81.100u 0.031s 1:21.35 99.7%    172+74k 0+0io 0pf+0w


Virtual:
time bonnie++
Writing with putc()...done
Writing intelligently...done
Rewriting...done
Reading with getc()...done
Reading intelligently...done
start 'em...done...done...done...
Create files in sequential order...done.
Stat files in sequential order...done.
Delete files in sequential order...done.
Create files in random order...done.
Stat files in random order...done.
Delete files in random order...done.
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
vd1.mw.office  300M 10330 100 18007 100  5532  99 11184 100 17143  99  57.7  99
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  2011  99 12573  99  6832 100  2691 100 13393  99  4686 100
vd1.mw.office,300M,10330,100,18007,100,5532,99,11184,100,17143,99,57.7,99,16,2011,99,12573,99,6832,100,2691,100,13393,99,4686,100
49.217u 263.608s 5:23.28 96.7%  11+52k 922+209492io 0pf+0w
Real:
time bonnie++
Writing with putc()...done
Writing intelligently...done
Rewriting...done
Reading with getc()...done
Reading intelligently...done
start 'em...done...done...done...
Create files in sequential order...done.
Stat files in sequential order...done.
Delete files in sequential order...done.
Create files in random order...done.
Stat files in random order...done.
Delete files in random order...done.
Version  1.03       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
dfly.mw.office 300M 14645  87 19324  16  6945   4 17071  87 18485   6 123.9   0
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16  5521  31 26859  81 14964  69 10203  57 20245  51 14779  62
dfly.mw.office,300M,14645,87,19324,16,6945,4,17071,87,18485,6,123.9,0,16,5521,31,26859,81,14964,69,10203,57,20245,51,14779,62
31.322u 13.401s 3:16.31 22.7%   17+80k 1246+9600io 4pf+0w
Mike.





More information about the Users mailing list