freebsd用整体解决方案,简约内核打动我们。用它一个更大的理由是它出色的软件包管理。unix/linux下的免费软件远要比windows下的多,不论用port还是, pkg_add都是非常方便!
回到正题,任何东西只有能度量,才能进度。服务器硬件性能,软件占用资源和性能都是我们整体方案的一部分。
freebsd下用unixbench和自带的diskinfo都是测试性能的好工具。前者用port安装。
========================
硬件:
Xeon E5320 4 core 1.86GHz
4-6G, SAS 15000 73G,Raid0
==============================
unixbench 4.1
4G内存,无raid0, 单块硬盘
TEST BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 10871107.7 931.5
Double-Precision Whetstone 55.0 2334.0 424.4
Execl Throughput 43.0 1656.7 385.3
File Copy 1024 bufsize 2000 maxblocks 3960.0 53064.0 134.0
File Copy 256 bufsize 500 maxblocks 1655.0 52611.0 317.9
File Copy 4096 bufsize 8000 maxblocks 5800.0 75403.0 130.0
Pipe Throughput 12440.0 696700.6 560.0
Pipe-based Context Switching 4000.0 97562.5 243.9
Process Creation 126.0 5239.9 415.9
Shell Scripts (8 concurrent) 6.0 1074.4 1790.7
System Call Overhead 15000.0 418358.8 278.9
=========
FINAL SCORE 399.1
(imac下virtualbox freebsd 286.7)
=====================
双CPU,无raid, 单硬盘
TEST BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 10705009.7 917.3
Double-Precision Whetstone 55.0 2299.4 418.1
Execl Throughput 43.0 1461.9 340.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 74216.0 187.4
File Copy 256 bufsize 500 maxblocks 1655.0 47267.0 285.6
File Copy 4096 bufsize 8000 maxblocks 5800.0 82344.0 142.0
Pipe Throughput 12440.0 694449.9 558.2
Pipe-based Context Switching 4000.0 49442.0 123.6
Process Creation 126.0 2502.7 198.6
Shell Scripts (8 concurrent) 6.0 639.5 1065.8
System Call Overhead 15000.0 417766.4 278.5
=========
FINAL SCORE 323.3
=============
双cpu, RAID0
TEST BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 10827829.1 927.8
Double-Precision Whetstone 55.0 2299.1 418.0
Execl Throughput 43.0 1396.8 324.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 123192.0 311.1
File Copy 256 bufsize 500 maxblocks 1655.0 57031.0 344.6
File Copy 4096 bufsize 8000 maxblocks 5800.0 125188.0 215.8
Pipe Throughput 12440.0 696110.8 559.6
Pipe-based Context Switching 4000.0 49654.9 124.1
Process Creation 126.0 2446.5 194.2
Shell Scripts (8 concurrent) 6.0 663.2 1105.3
System Call Overhead 15000.0 418897.5 279.3
=========
FINAL SCORE 357.4
================
单CPU, RAID0
INDEX VALUES
TEST BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 10768717.2 922.8
Double-Precision Whetstone 55.0 2304.3 419.0
Execl Throughput 43.0 1659.2 385.9
File Copy 1024 bufsize 2000 maxblocks 3960.0 125472.0 316.8
File Copy 256 bufsize 500 maxblocks 1655.0 64471.0 389.6
File Copy 4096 bufsize 8000 maxblocks 5800.0 127750.0 220.3
Pipe Throughput 12440.0 695856.9 559.4
Pipe-based Context Switching 4000.0 89720.7 224.3
Process Creation 126.0 4944.5 392.4
Shell Scripts (8 concurrent) 6.0 1069.5 1782.5
System Call Overhead 15000.0 419510.4 279.7
=========
FINAL SCORE 432.7
=============
小结:
总体来看,硬盘IO得分较低。通过Raid0,性能有50%的提升!
双CPU并没有带来得分提升,反而分数下降,应该是unix并不能把smp性能发挥出来。
==============
vimdisk -vt *** 测试
单块磁盘
Seek times:
Full stroke: 250 iter in 2.284611 sec = 9.138 msec
Half stroke: 250 iter in 1.708564 sec = 6.834 msec
Quarter stroke: 500 iter in 2.904974 sec = 5.810 msec
Short forward: 400 iter in 0.999326 sec = 2.498 msec
Short backward: 400 iter in 1.422588 sec = 3.556 msec
Seq outer: 2048 iter in 0.644016 sec = 0.314 msec
Seq inner: 2048 iter in 0.646552 sec = 0.316 msec
Transfer rates:
outside: 102400 kbytes in 1.121078 sec = 91341 kbytes/sec
middle: 102400 kbytes in 1.256561 sec = 81492 kbytes/sec
inside: 102400 kbytes in 1.718713 sec = 59579 kbytes/sec
RAID0
Seek times:
Full stroke: 250 iter in 0.757134 sec = 3.029 msec
Half stroke: 250 iter in 1.734370 sec = 6.937 msec
Quarter stroke: 500 iter in 2.851250 sec = 5.702 msec
Short forward: 400 iter in 1.181895 sec = 2.955 msec
Short backward: 400 iter in 1.533171 sec = 3.833 msec
Seq outer: 2048 iter in 0.637557 sec = 0.311 msec
Seq inner: 2048 iter in 0.646973 sec = 0.316 msec
Transfer rates:
outside: 102400 kbytes in 0.928369 sec = 110301 kbytes/sec
middle: 102400 kbytes in 0.914266 sec = 112002 kbytes/sec
inside: 102400 kbytes in 0.914666 sec = 111953 kbytes/sec
小结:通过RAID0,性能有20%-87%的提升。
======================
总结:
度量才能进度,硬盘性能是基础,可以用unix自带和开源的工具来建立基线!
服务器的RAID方案可以提升IO的性能,进而提升整体性能。