Bonnie over NFS a wee bit slow w. 2.1.57

Michael L. Galbraith (mikeg@weiden.de)
Sat, 11 Oct 1997 14:27:32 +0100 (MET)


Hello All,

Running Bonnie over NFS produced some interesting results. With 2.1.57 as
the server, running linux-nfs-0.4.21 daemons, the machine spends a large
portion of it's time in sync_indirect() sync_block() and get_hash_table().

Hope these are useful,

-Mike

P.S.
I started a run with a 100Mb file.. it died of boredom (mine) after an hour.

----------------------------THE RESULTS--------------------------------

First, a throughput test. [Ingo tool]

MMX-150-2.1.57:# test_tcp laptop root 10
testing rsh connection ... succeeded.
compiling test program on remote system ... done.
doing 0 MB length TCP test ... done.
doing TCP test for 10 megabytes of data ... done.
transfer time in seconds for 10*1024*1024 bytes of TCP data: 19.69-1.26
bytes per sec: 568950
kbytes per sec: 555

Hohum hardware - oh well.

486DX40-1.3.94 laptop as NFS server.. [performance leader]

MMX-150-2.1.57:# time -p ./Bonnie -s 2
File './Bonnie.282', size: 2097152
Writing with putc()...done
Rewriting....done
Writing intelligently...done
Reading with getc()...done
Reading intelligently...done
Seeker 2...Seeker 3...Seeker 1...start 'em...done...done...done...
-------Sequential Output-------- ---Sequential Input-- --Random--
-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
2 242 11.8 358 1.4 116 2.1 219 4.4 312 3.5 38.6 4.8
real 158.98
user 0.42
sys 6.70

MMX150-2.1.57 as NFS server w. kernelspace nfs daemons..

laptop:# time -p ./Bonnie -s 2
File './Bonnie.221', size: 2097152
Writing with putc()...done
Rewriting...done
Writing intelligently...done
Reading with getc()...done
Reading intelligently...done
Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done...
-------Sequential Output-------- ---Sequential Input-- --Random--
-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
2 29 8.7 30 6.2 27 9.5 173 39.4 10063 98.3 36.6 17.5
real 338.62
user 3.42
sys 38.01

Profile of 2.1.57 server [cut to > 1.00%]
25 1.04% c01e2c88 _memcpy_g
26 1.08% c01243e0 _bforget
56 2.33% c01237ac get_hardblocksize
68 2.83% c012439c _brelse
89 3.71% c01240e4 refile_buffer
100 4.17% c0199f5c _get_request_wait
223 9.30% c013d72c sync_indirect
283 11.80% c013d5e4 sync_block
484 20.19% c0123710 get_hash_table
577 24.07% c0208310 idt
2397 100.00% 00000000 total

MMX150-2.1.57 as NFS server w. userspace nfs daemons.. [nfs-server-2.2beta29]

laptop:# time -p ./Bonnie -s 2
File './Bonnie.202', size: 2097152
Writing with putc()...done
Rewriting...done
Writing intelligently...done
Reading with getc()...done
Reading intelligently...done
Seeker 1...Seeker 2...Seeker 3...start 'em...done...done...done...
-------Sequential Output-------- ---Sequential Input-- --Random--
-Per Char- --Block--- -Rewrite-- -Per Char- --Block--- --Seeks---
Machine MB K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU K/sec %CPU /sec %CPU
2 165 40.3 195 38.1 95 35.4 162 36.7 10034 98.0 205.2 33.7
real 81.68
user 2.87
sys 25.21

Profile of 2.1.57 server [cut to > 1.00%]
8 1.09% c012954c getname
8 1.09% c012992c lookup_dentry
8 1.09% c0168484 do_dev_queue_xmit
8 1.09% c01e2a94 csum_partial_copy_generic
9 1.23% c0109230 system_call
9 1.23% c0185aa4 ip_fw_chk
12 1.64% c012b9e0 do_select
14 1.91% c01741a0 ip_build_xmit
29 3.97% c01e2c88 _memcpy_g
31 4.24% c01e2d64 __copy_user
404 55.34% c0208310 idt
730 100.00% 00000000 total