Pages

Saturday, 21 January 2012

用UnixBench测试VPS性能 判别是否值得购买

UnixBench是一款不错的Linux下的VPS性能测试软件,现在说一下具体用法。

UnixBench 4.10 (WHT修改版) 下载地址:http://licess.googlecode.com/files/unixbench-4.1.0-wht.tar.gz

[root@leadvps ~]# wget http://licess.googlecode.com/files/unixbench-4.1.0-wht.tar.gz
[root@leadvps ~]# tar xzf unixbench-4.1.0-wht.tar.gz
[root@leadvps ~]# ls
unixbench-4.1.0-wht-2  unixbench-4.1.0-wht.tar.gz
[root@leadvps ~]# cd unixbench-4.1.0-wht-2
[root@leadvps unixbench-4.1.0-wht-2]# make
//此处省略
[root@leadvps unixbench-4.1.0-wht-2]# ./Run

以下是EcVPS 1024 MB内存的VPS分数情况,你可以用 UnixBench WHT 修改版来测试自己VPS的性能,在这个帖子 (http://www.webhostingtalk.com/showthread.php?t=409584)里会有更多VPS厂商自己的评测结果,尽量往后翻。

BYTE UNIX Benchmarks (Version 4.1-wht.2)
System – Linux leadvps 2.6.18-164.2.1.el5.028stab066.10 #1 SMP Sat Dec 1218:52:53 MSK 2009 x86_64 x86_64 x86_64 GNU/Linux
/dev/simfs 40960000 2801220 38158780 7% /

Start Benchmark Run: Mon Jan 18 20:11:42 CST 2010
20:11:42 up 1 day, 39 min, 1 user, load average: 0.09, 0.27, 0.14

End Benchmark Run: Mon Jan 18 20:24:19 CST 2010
20:24:19 up 1 day, 51 min, 1 user, load average: 11.81, 5.42, 2.60

INDEX VALUES
TEST BASELINE RESULT INDEX

Dhrystone 2 using register variables 376783.7 20113815.4 533.8
Double-Precision Whetstone 83.1 1557.4 187.4
Execl Throughput 188.3 13683.1 726.7
File Copy 1024 bufsize 2000 maxblocks 2672.0 471650.0 1765.2
File Copy 256 bufsize 500 maxblocks 1077.0 119296.0 1107.7
File Read 4096 bufsize 8000 maxblocks 15382.0 2621228.0 1704.1
Pipe-based Context Switching 15448.6 456250.1 295.3
Pipe Throughput 111814.6 3506428.2 313.6
Process Creation 569.3 38742.3 680.5
Shell Scripts (8 concurrent) 44.8 3376.0 753.6
System Call Overhead 114433.5 3389323.9 296.2
=========
FINAL SCORE 596.6

PS:分数仅供参考,100分以上的VPS才是比较适合购买的。

PS:如果遇到 Error: Please install /usr/bin/time. 错误提示

centos/fedora 下运行 yum install time
ubuntu/debian 下运行 apt-get install time

即可解决.
------------------------------------------------

UnixBench – Test the performance of your Linux VPS

UnixBench provides a basic indicator of the performance of a Unix-like system. Multiple tests are used to test various aspects of the system’s performance. These test results are then compared to the scores from a baseline system to produce an index value, which is generally easier to handle than the raw scores. The entire set of index values is then combined to make an overall index for the system. Some very simple graphics tests are included to measure the 2D and 3D graphics performance of the system. Multi-CPU systems are handled. If your system has multiple CPUs, the default behaviour is to run the selected tests twice: once with one copy of each test program running at a time, and once with N copies, where N is the number of CPUs.

UnixBench 4.10 Download url:http://soft.vpser.net/test/unixbench/unixbench-4.1.0-wht.tar.gz

[root@noc ~]# wget http://soft.vpser.net/test/unixbench/unixbench-4.1.0-wht.tar.gz

[root@noc ~]# tar xzf unixbench-4.1.0-wht.tar.gz
[root@noc ~]# ls
unixbench-4.1.0-wht-2  unixbench-4.1.0-wht.tar.gz

[root@noc ~]# cd unixbench-4.1.0-wht-2/
[root@noc unixbench-4.1.0-wht-2]# make

[root@noc unixbench-4.1.0-wht-2]# ./Run

Run UnixBench shows:

BYTE UNIX Benchmarks (Version 4.1-wht.2)
System — Linux noc.lnmp.org 2.6.18-92.1.13.el5.028stab059.6 #1 SMP Fri Nov 14 16:01:01 MSK 2008 i686 i686 i386 GNU/Linux
simfs                  5120000   1581972   3538028  31% /

Start Benchmark Run: Wed Feb  4 05:11:25 PST 2009
05:11:25 up 20 days, 21:26,  1 user,  load average: 0.00, 0.00, 0.00

End Benchmark Run: Wed Feb  4 05:21:40 PST 2009
05:21:40 up 20 days, 21:37,  1 user,  load average: 15.46, 6.32, 2.72
INDEX VALUES
TEST                                        BASELINE     RESULT      INDEX

Dhrystone 2 using register variables        376783.7 23797779.3      631.6
Double-Precision Whetstone                      83.1     1407.7      169.4
Execl Throughput                               188.3    10095.2      536.1
File Copy 1024 bufsize 2000 maxblocks         2672.0   204163.0      764.1
File Copy 256 bufsize 500 maxblocks           1077.0    74664.0      693.3
File Read 4096 bufsize 8000 maxblocks        15382.0  1629641.0     1059.4
Pipe Throughput                             111814.6  3058960.1      273.6
Pipe-based Context Switching                 15448.6   887966.3      574.8
Process Creation                               569.3    26803.0      470.8
Shell Scripts (8 concurrent)                    44.8     2503.6      558.8
System Call Overhead                        114433.5  2409758.4      210.6
=========
FINAL SCORE                                                     475.4
[root@noc unixbench-4.1.0-wht-2]#

from http://www.vpser.org/management/unixbench-linux-vps-performance.html
---------------------------------------------------------------
UnixBench : Know Your VPS Computation Power



A little explanation about UnixBench taken from the web :
UnixBench is the original BYTE UNIX benchmark suite, updated and revised by many people over the years.
The purpose of UnixBench is to provide a basic indicator of the performance of a Unix-like system; hence, multiple tests are used to test various aspects of the system’s performance. These test results are then compared to the scores from a baseline system to produce an index value, which is generally easier to handle than the raw scores. The entire set of index values is then combined to make an overall index for the system.
Some very simple graphics tests are included to measure the 2D and 3D graphics performance of the system.
Multi-CPU systems are handled. If your system has multiple CPUs, the default behaviour is to run the selected tests twice — once with one copy of each test program running at a time, and once with N copies, where N is the number of CPUs. This is designed to allow you to assess:
  • the performance of your system when running a single task
  • the performance of your system when running multiple tasks
  • the gain from your system’s implementation of parallel processing
Do be aware that this is a system benchmark, not a CPU, RAM or disk benchmark. The results will depend not only on your hardware, but on your operating system, libraries, and even compiler.

UnixBench 4.1.0

I use web hosting talk version.
# wget -c http://members.dslextreme.com/users/andylee/unixbench-4.1.0-wht.tar.gz
–2010-05-06 19:09:26–  http://members.dslextreme.com/users/andylee/unixbench-4.1.0-wht.tar.gz
Resolving members.dslextreme.com… 66.51.199.79
Connecting to members.dslextreme.com|66.51.199.79|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 69272 (68K) [application/x-gzip]
Saving to: `unixbench-4.1.0-wht.tar.gz’
100%[=================================================================================================>] 69,272      –.-K/s   in 0.01s
2010-05-06 19:09:26 (6.19 MB/s) – `unixbench-4.1.0-wht.tar.gz’ saved [69272/69272]
# tar xvzf unixbench-4.1.0-wht.tar.gz
# cd unixbench-4.1.0-wht-2/
# make
#./Run

The result

Start Benchmark Run: Thu May  6 19:14:40 MSD 2010
19:14:40 up 13 days, 22:15,  1 user,  load average: 0.25, 0.22, 0.27
End Benchmark Run: Thu May  6 19:25:42 MSD 2010
19:25:42 up 13 days, 22:26,  1 user,  load average: 11.52, 5.50, 2.67
INDEX VALUES
TEST                                        BASELINE     RESULT      INDEX
Dhrystone 2 using register variables        376783.7 17135440.8      454.8
Double-Precision Whetstone                      83.1     1127.9      135.7
Execl Throughput                               188.3    11168.2      593.1
File Copy 1024 bufsize 2000 maxblocks         2672.0   291723.0     1091.8
File Copy 256 bufsize 500 maxblocks           1077.0    88346.0      820.3
File Read 4096 bufsize 8000 maxblocks        15382.0  2139834.0     1391.1
Pipe-based Context Switching                 15448.6   336549.8      217.9
Pipe Throughput                             111814.6  2846377.0      254.6
Process Creation                               569.3    32808.1      576.3
Shell Scripts (8 concurrent)                    44.8     2205.6      492.3
System Call Overhead                        114433.5  2803936.1      245.0
=========
FINAL SCORE                                                     455.7
I wait for 10 minutes and try again.
INDEX VALUES
TEST                                        BASELINE     RESULT      INDEX
Dhrystone 2 using register variables        376783.7 17475973.8      463.8
Double-Precision Whetstone                      83.1     1139.1      137.1
Execl Throughput                               188.3    11589.7      615.5
File Copy 1024 bufsize 2000 maxblocks         2672.0   330976.0     1238.7
File Copy 256 bufsize 500 maxblocks           1077.0    91197.0      846.8
File Read 4096 bufsize 8000 maxblocks        15382.0  2261841.0     1470.4
Pipe-based Context Switching                 15448.6   417790.5      270.4
Pipe Throughput                             111814.6  2865933.7      256.3
Process Creation                               569.3    30422.6      534.4
Shell Scripts (8 concurrent)                    44.8     2095.7      467.8
System Call Overhead                        114433.5  2811671.0      245.7
=========
FINAL SCORE                                                     471.7

UnixBench 5.1.2

# wget -c http://byte-unixbench.googlecode.com/files/unixbench-5.1.2.tar.gz
# tar xvzf unixbench-5.1.2.tar.gz
# cd unixbench-5.1.2
# make
I got error in make process.
./src/ubgears.c:48:22: error: X11/Xlib.h: No such file or directory
./src/ubgears.c:49:23: error: X11/Xutil.h: No such file or directory
./src/ubgears.c:50:24: error: X11/keysym.h: No such file or directory
./src/ubgears.c:51:19: error: GL/gl.h: No such file or directory
./src/ubgears.c:52:20: error: GL/glx.h: No such file or directory
I use CentOS 5 32 bit and call for yum help icon smile UnixBench : Know Your VPS Computation Power
# yum install libXext-devel
Retry make command and I found no problem.
Doing ./Run  and here’s the result :
————————————————————————
Benchmark Run: Thu May 06 2010 20:24:06 – 20:55:14
8 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables        8886788.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1969.7 MWIPS (10.2 s, 7 samples)
Execl Throughput                               3473.5 lps   (29.7 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        454222.1 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks          126175.7 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks       1117806.3 KBps  (30.1 s, 2 samples)
Pipe Throughput                              833631.8 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  52455.5 lps   (10.0 s, 7 samples)
Process Creation                              11216.1 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   4326.0 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                   1592.9 lpm   (60.0 s, 2 samples)
System Call Overhead                         751040.0 lps   (10.0 s, 7 samples)
System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0    8886788.5    761.5
Double-Precision Whetstone                       55.0       1969.7    358.1
Execl Throughput                                 43.0       3473.5    807.8
File Copy 1024 bufsize 2000 maxblocks          3960.0     454222.1   1147.0
File Copy 256 bufsize 500 maxblocks            1655.0     126175.7    762.4
File Copy 4096 bufsize 8000 maxblocks          5800.0    1117806.3   1927.3
Pipe Throughput                               12440.0     833631.8    670.1
Pipe-based Context Switching                   4000.0      52455.5    131.1
Process Creation                                126.0      11216.1    890.2
Shell Scripts (1 concurrent)                     42.4       4326.0   1020.3
Shell Scripts (8 concurrent)                      6.0       1592.9   2654.8
System Call Overhead                          15000.0     751040.0    500.7
========
System Benchmarks Index Score                                         763.7

Benchmark Run: Thu May 06 2010 20:55:14 – 21:27:19
8 CPUs in system; running 8 parallel copies of tests
Dhrystone 2 using register variables       36120497.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                    13963.8 MWIPS (10.2 s, 7 samples)
Execl Throughput                              13917.3 lps   (29.5 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        455380.1 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks          179917.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks       1152027.9 KBps  (30.0 s, 2 samples)
Pipe Throughput                             3820104.5 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                1112959.1 lps   (10.0 s, 7 samples)
Process Creation                              43207.7 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                  16968.9 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                   2373.9 lpm   (60.1 s, 2 samples)
System Call Overhead                        4068141.0 lps   (10.0 s, 7 samples)
System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   36120497.5   3095.2
Double-Precision Whetstone                       55.0      13963.8   2538.9
Execl Throughput                                 43.0      13917.3   3236.6
File Copy 1024 bufsize 2000 maxblocks          3960.0     455380.1   1149.9
File Copy 256 bufsize 500 maxblocks            1655.0     179917.4   1087.1
File Copy 4096 bufsize 8000 maxblocks          5800.0    1152027.9   1986.3
Pipe Throughput                               12440.0    3820104.5   3070.8
Pipe-based Context Switching                   4000.0    1112959.1   2782.4
Process Creation                                126.0      43207.7   3429.2
Shell Scripts (1 concurrent)                     42.4      16968.9   4002.1
Shell Scripts (8 concurrent)                      6.0       2373.9   3956.6
System Call Overhead                          15000.0    4068141.0   2712.1
========
System Benchmarks Index Score                                        2560.6
How about your Vps?

from http://www.hostingformula.net/unixbench-know-your-vps-computation-power/
-------------------------------------------------------------------------------



UnixBench is an OpenASource GPLv2 licensed tool that provides a basic indicator of the performance of a Unix-like system. This is especially useful in the case of testing the performance of VPS’s since the resources for them are limited when compared to a dedicated server. Multiple tests are used to test various aspects of the system’s performance and these test results are then compared to the scores from a baseline system to produce an index value, which is generally easier to handle than the raw scores.
UnixBench can test basic graphics including 2D and 3D performance and Multi-CPU systems are also handled. If your system has multiple CPUs, the default behaviour is to run the selected tests twice, once with one copy of each test program running at a time, and once with N copies, where N is the number of CPUs. This is designed to allow you to assess:
  • the performance of your system when running a single task
  • the performance of your system when running multiple tasks
  • the gain from your system’s implementation of parallel processing
What all could be tested using UnixBench:
Dhrystone :
This benchmark is used to measure and compare the performance of computers. The test focuses on string handling, as there are no floating point operations. It is heavily influenced by hardware and software design, compiler and linker options, code optimization, cache memory, wait states, and integer data types.
Whetstone:
Measures the speed and efficiency of floating-point operations. This test contains several modules that are meant to represent a mix of operations typically performed in scientific applications. A wide variety of C functions including sin, cos, sqrt, exp, and log are used as well as integer and floating-point math operations, array accesses, conditional branches, and procedure calls. This test measure both integer and floating-point arithmetic.
Execl Throughput:
This test measures the number of execl calls that can be performed per second. Execl is part of the exec family of functions that replaces the current process image with a new process image. It and many other similar commands are front ends for the function execve().

File Copy:
This measures the rate at which data can be transferred from one file to another, using various buffer sizes. The file read, write and copy tests capture the number of characters that can be written, read and copied in a specified time (default is 10 seconds).
Pipe Throughput:
A pipe is the simplest form of communication between processes. Pipe throughtput is the number of times (per second) a process can write 512 bytes to a pipe and read them back. The pipe throughput test has no real counterpart in real-world programming.
Pipe-based Context Switching:
This test measures the number of times two processes can exchange an increasing integer through a pipe. The pipe-based context switching test is more like a real-world application. The test program spawns a child process with which it carries on a bi-directional pipe conversation.
Process Creation:
This test measure the number of times a process can fork and reap a child that immediately exits. Process creation refers to actually creating process control blocks and memory allocations for new processes, so this applies directly to memory bandwidth. Typically, this benchmark would be used to compare various implementations of operating system process creation calls.
Shell Scripts:
The shells scripts test measures the number of times per minute a process can start and reap a set of one, two, four and eight concurrent copies of a shell scripts where the shell script applies a series of transformation to a data file.
System Call Overhead:
Estimates the cost of entering and leaving the operating system kernel, i.e. the overhead for performing a system call. It consists of a simple program repeatedly calling the getpid (which returns the process id of the calling process) system call. The time to execute such calls is used to estimate the cost of entering and exiting the kernel.
Graphical Tests:
Both 2D and 3D graphical tests are provided; at the moment, the 3D suite in particular is very limited, consisting of the “ubgears” program. These tests are intended to provide a very rough idea of the system’s 2D and 3D graphics performance. Bear in mind, of course, that the reported performance will depend not only on hardware, but on whether your system has appropriate drivers for it.
You can download the latest version from here : http://code.google.com/p/byte-unixbench/downloads/list
Installation and Running tests:
For Centos/RedHat machines:
Install the required libraries:
Find your machine architecture:
root@server12 [~]# getconf LONG_BIT
64
My system is 64 bit and hence installing libraries for 64bit architecture.
yum install libX11-devel.x86_64 perl perl-modules.noarch make
For Ubuntu/Debain machines,
sudo apt-get install libx11-dev libgl1-mesa-dev libxext-dev perl  perl-modules
Download the package:
wget -c http://byte-unixbench.googlecode.com/files/unixbench-5.1.2.tar.gz

tar -xzf unixbench-5.1.2.tar.gz

cd unixbench-5.1.2/

<code>./Run 
This is check all the parametres, if you just want to check specific parametres, you can spacify this on ./Run command, like
./Run dhry2reg whetstone-double syscall pipe context1 spawn execl shell1 shell8 shell16
A sample output has been given below.:-
[root@temp unixbench-5.1.2]#./Run dhry2reg whetstone-double syscall pipe context1 spawn execl shell1 shell8 shell16
make all
make[1]: Entering directory `/usr/src/unixbench-5.1.2′
Checking distribution of files
./pgms  exists
./src  exists
./testdir  exists
./tmp  exists
./results  exists
make[1]: Leaving directory `/usr/src/unixbench-5.1.2′
sh: 3dinfo: command not found
#    #  #    #  #  #    #          #####   ######  #    #   ####   #    #
#    #  ##   #  #   #  #           #    #  #       ##   #  #    #  #    #
#    #  # #  #  #    ##            #####   #####   # #  #  #       ######
#    #  #  # #  #    ##            #    #  #       #  # #  #       #    #
#    #  #   ##  #   #  #           #    #  #       #   ##  #    #  #    #
####   #    #  #  #    #          #####   ######  #    #   ####   #    #
Version 5.1.2                      Based on the Byte Magazine Unix Benchmark
Multi-CPU version                  Version 5 revisions by Ian Smith,
Sunnyvale, CA, USA
December 22, 2007                  johantheghost at yahoo period com
1 x Dhrystone 2 using register variables  1 2 3 4 5 6 7 8 9 10
1 x Double-Precision Whetstone  1 2 3 4 5 6 7 8 9 10
1 x System Call Overhead  1 2 3 4 5 6 7 8 9 10
1 x Pipe Throughput  1 2 3 4 5 6 7 8 9 10
1 x Pipe-based Context Switching  1 2 3 4 5 6 7 8 9 10
1 x Process Creation  1 2 3
1 x Execl Throughput  1 2 3
1 x Shell Scripts (1 concurrent)  1 2 3
1 x Shell Scripts (8 concurrent)  1 2 3
1 x Shell Scripts (16 concurrent)  1 2 3
4 x Dhrystone 2 using register variables  1 2 3 4 5 6 7 8 9 10
4 x Double-Precision Whetstone  1 2 3 4 5 6 7 8 9 10
4 x System Call Overhead  1 2 3 4 5 6 7 8 9 10
4 x Pipe Throughput  1 2 3 4 5 6 7 8 9 10
4 x Pipe-based Context Switching  1 2 3 4 5 6 7 8 9 10
4 x Process Creation  1 2 3
4 x Execl Throughput  1 2 3
4 x Shell Scripts (1 concurrent)  1 2 3
4 x Shell Scripts (8 concurrent)  1 2 3
4 x Shell Scripts (16 concurrent)  1 2 3
========================================================================
BYTE UNIX Benchmarks (Version 5.1.2)
System: temp.xen.com: GNU/Linux
OS: GNU/Linux — 2.6.18-194.8.1.el5xen — #1 SMP Thu Jul 1 19:41:05 EDT 2010
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap=”UTF-8″, collate=”UTF-8″)
CPU 0: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz (6685.4 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET
CPU 1: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz (6685.4 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET
CPU 2: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz (6685.4 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET
CPU 3: Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz (6685.4 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSCALL/SYSRET
06:59:48 up 34 min,  1 user,  load average: 4.05, 2.22, 1.20; runlevel 3
————————————————————————
Benchmark Run: Wed Aug 04 2010 06:59:48 – 07:23:56
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables       15391672.9 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     3051.5 MWIPS (9.9 s, 7 samples)
Execl Throughput                               1688.3 lps   (30.0 s, 2 samples)
Pipe Throughput                              434843.9 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 113665.2 lps   (10.0 s, 7 samples)
Process Creation                               4275.5 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   4460.3 lpm   (60.0 s, 2 samples)
Shell Scripts (16 concurrent)                   573.8 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                   1088.8 lpm   (60.0 s, 2 samples)
System Call Overhead                         551580.7 lps   (10.0 s, 7 samples)
System Benchmarks Partial Index              BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   15391672.9   1318.9
Double-Precision Whetstone                       55.0       3051.5    554.8
Execl Throughput                                 43.0       1688.3    392.6
Pipe Throughput                               12440.0     434843.9    349.6
Pipe-based Context Switching                   4000.0     113665.2    284.2
Process Creation                                126.0       4275.5    339.3
Shell Scripts (1 concurrent)                     42.4       4460.3   1052.0
Shell Scripts (16 concurrent)                     —        573.8      —
Shell Scripts (8 concurrent)                      6.0       1088.8   1814.7
System Call Overhead                          15000.0     551580.7    367.7
========
System Benchmarks Index Score (Partial Only)                          574.3
————————————————————————
Benchmark Run: Wed Aug 04 2010 07:23:56 – 07:48:15
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables       60140037.8 lps   (10.1 s, 7 samples)
Double-Precision Whetstone                    12184.4 MWIPS (9.9 s, 7 samples)
Execl Throughput                               4342.6 lps   (30.0 s, 2 samples)
Pipe Throughput                             1718444.4 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 447592.9 lps   (10.0 s, 7 samples)
Process Creation                               7228.8 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   8807.4 lpm   (60.0 s, 2 samples)
Shell Scripts (16 concurrent)                   663.0 lpm   (60.1 s, 2 samples)
Shell Scripts (8 concurrent)                   1317.0 lpm   (60.1 s, 2 samples)
System Call Overhead                        2058385.7 lps   (10.1 s, 7 samples)
System Benchmarks Partial Index              BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   60140037.8   5153.4
Double-Precision Whetstone                       55.0      12184.4   2215.3
Execl Throughput                                 43.0       4342.6   1009.9
Pipe Throughput                               12440.0    1718444.4   1381.4
Pipe-based Context Switching                   4000.0     447592.9   1119.0
Process Creation                                126.0       7228.8    573.7
Shell Scripts (1 concurrent)                     42.4       8807.4   2077.2
Shell Scripts (16 concurrent)                     —        663.0      —
Shell Scripts (8 concurrent)                      6.0       1317.0   2195.0
System Call Overhead                          15000.0    2058385.7   1372.3
========
System Benchmarks Index Score (Partial Only)                         1587.3
Related posts:
  1. Apache Performance Tuning (Part III/III) – Measuring Apache’s Performance
  2. Apache Performance Tuning (Part II/III) – Editing Apache for Performance
  3. Apache Performance Tuning (Part I/III) – Choosing the Best Platform for Apache
from http://www.supportsages.com/blog/2010/08/unixbench-find-your-system-performance/
------------------------------------------------------------------------------

Linux Benchmarking

Last updated: 12 October 2007
UnixBench has a new home!
UnixBench is now based at Google Code,
and all maintenance will happen there.
For the latest information and downloads, please go to: http://code.google.com/p/byte-unixbench/
This page presents some information on Linux benchmarking; and in particular, UnixBench Version 5, a version of the venerable Byte benchmarks updated to handle multi-CPU systems.

Results

Here are some benchmarking results from UnixBench. Click on a system name to see the full results:
System CPU OS UnixBench
Version
System Graphics
Single Dual 2D 3D
HP Compaq nc8430 Core Duo T2500 @ 2.00GHz openSUSE 10.2 (i586) 5.0 678.2 1026.2

HP Compaq nc8430 Core Duo T2500 @ 2.00GHz openSUSE 10.3 (i586) 5.0 495.7 802.7

HP Compaq nc8430 Core Duo T2500 @ 2.00GHz openSUSE 10.3 (i586) 5.1 493.8 797.0 668.7 731.8
Sony Vaio TXN25N Core Solo U1500 @ 1.33GHz openSUSE 10.2 (i586) 5.0 498.4 n/a

Sony Vaio TXN25N Core Solo U1500 @ 1.33GHz openSUSE 10.3 (i586) 5.0 426.0 n/a

Sony Vaio TXN25N Core Solo U1500 @ 1.33GHz openSUSE 10.3 (i586) 5.1.1 437.5 n/a 730.9 209.6
Sony Vaio TXN25N Core Solo U1500 @ 1.33GHz openSUSE 10.3 (i586) (runlevel 1) 5.1.1 385.4 n/a

Dell Latitude D620 Core 2 Duo T5600 @ 1.83GHz openSUSE 10.3 (i586) 5.0 560.1 1013.1

Dell Latitude D620 Core 2 Duo T5600 @ 1.83GHz openSUSE 10.3 (i586) 5.1 575.2 1024.0 1080.2 267.1
Dell Latitude D620 Core 2 Duo T5600 @ 1.83GHz openSUSE 10.1 (X86-64) 5.1.1 685.6 1186.1 1335.2 411.9
Dell Latitude D620 Core 2 Duo T5600 @ 1.83GHz openSUSE 10.2 (X86-64) 5.1.1 684.8 1178.7 1243.2 405.6
Dell Latitude D620 Core 2 Duo T5600 @ 1.83GHz openSUSE 10.3 (X86-64) 5.1.1 678.6 1125.6 1263.4 363.8
HP Compaq 8510w Core 2 Duo CPU T7500 @ 2.20GHz openSUSE 10.3 (X86-64) 5.1.1 842.5 1192.2 4886.9 3613.8
Some observations:
  • OpenSUSE 10.3 is a bit slower than 10.2; it runs at about 75% - 85% as fast. Shame, since 10.2 was about 50% faster than 10.1.
  • Linux gets a good speedup from utilising 2 CPUs: 160% (Core Duo) to 180% (Core 2 Duo). Considering that the system benchmark covers a pretty broad range, including filesystem tests that are actually hurt by 2 CPUs (due to greater contention; see the "USAGE" file), this seems pretty good.
  • The 64-bit Linux install gains about 10%-15% over a 32-bit install on the same hardware.
  • UnixBench 5.1 discards the worst 1/3 of the results for each test, in an attempt to improve consistency. This causes a gain in the test scores of about 1%-2% relative to 5.0.
  • The graphics benchmarks, specially the 3D ones, are still very much in their infancy. Still, the Compaq — the only machine here with 3D hardware — clearly wins there.

Getting UnixBench

Please go to:
http://code.google.com/p/byte-unixbench/

Old UnixBench Versions

Version Source Documentation
5.1.2 unixbench-5.1.2.tar.gz README USAGE WRITING_TESTS
5.1.1 unixbench-5.1.1.tar.gz README USAGE WRITING_TESTS
5.1 unixbench-5.1.tar.gz README USAGE WRITING_TESTS
5.0 unixbench-5.0.tar.gz README USAGE WRITING_TESTS
Versions prior to 5.0 can be downloaded from David Niemi's site. Unixbench 5.0 was derived from version 4.1.0.

from http://www.hermit.org/Linux/Benchmarking/
----------------------------------------------------



UnixBench is the original BYTE UNIX benchmark suite, updated and revised by many people over the years.
The purpose of UnixBench is to provide a basic indicator of the performance of a Unix-like system; hence, multiple tests are used to test various aspects of the system's performance. These test results are then compared to the scores from a baseline system to produce an index value, which is generally easier to handle than the raw scores. The entire set of index values is then combined to make an overall index for the system.
Some very simple graphics tests are included to measure the 2D and 3D graphics performance of the system.
Multi-CPU systems are handled. If your system has multiple CPUs, the default behaviour is to run the selected tests twice -- once with one copy of each test program running at a time, and once with N copies, where N is the number of CPUs. This is designed to allow you to assess:
  • the performance of your system when running a single task
  • the performance of your system when running multiple tasks
  • the gain from your system's implementation of parallel processing
Do be aware that this is a system benchmark, not a CPU, RAM or disk benchmark. The results will depend not only on your hardware, but on your operating system, libraries, and even compiler.

History

UnixBench was first started in 1983 at Monash University, as a simple synthetic benchmarking application. It was then taken and expanded by Byte Magazine. Linux mods by Jon Tombs, and original authors Ben Smith, Rick Grehan, and Tom Yager.The tests compare Unix systems by comparing their results to a set of scores set by running the code on a benchmark system, which is a SPARCstation 20-61 (rated at 10.0).
David C. Niemi maintained the program for quite some time, and made some major modifications and updates, and produced UnixBench 4. He later gave the program to Ian Smith to maintain. Ian subsequently made some major changes and revised it from version 4 to version 5.

Included Tests

UnixBench consists of a number of individual tests that are targeted at specific areas. Here is a summary of what each test does:

Dhrystone

Developed by Reinhold Weicker in 1984. This benchmark is used to measure and compare the performance of computers. The test focuses on string handling, as there are no floating point operations. It is heavily influenced by hardware and software design, compiler and linker options, code optimization, cache memory, wait states, and integer data types.

Whetstone

This test measures the speed and efficiency of floating-point operations. This test contains several modules that are meant to represent a mix of operations typically performed in scientific applications. A wide variety of C functions including sin, cos, sqrt, exp, and log are used as well as integer and floating-point math operations, array accesses, conditional branches, and procedure calls. This test measure both integer and floating-point arithmetic.

Execl Throughput

This test measures the number of execl calls that can be performed per second. Execl is part of the exec family of functions that replaces the current process image with a new process image. It and many other similar commands are front ends for the function execve().

File Copy

This measures the rate at which data can be transferred from one file to another, using various buffer sizes. The file read, write and copy tests capture the number of characters that can be written, read and copied in a specified time (default is 10 seconds).

Pipe Throughput

A pipe is the simplest form of communication between processes. Pipe throughtput is the number of times (per second) a process can write 512 bytes to a pipe and read them back. The pipe throughput test has no real counterpart in real-world programming.

Pipe-based Context Switching

This test measures the number of times two processes can exchange an increasing integer through a pipe. The pipe-based context switching test is more like a real-world application. The test program spawns a child process with which it carries on a bi-directional pipe conversation.

Process Creation

This test measure the number of times a process can fork and reap a child that immediately exits. Process creation refers to actually creating process control blocks and memory allocations for new processes, so this applies directly to memory bandwidth. Typically, this benchmark would be used to compare various implementations of operating system process creation calls.

Shell Scripts

The shells scripts test measures the number of times per minute a process can start and reap a set of one, two, four and eight concurrent copies of a shell scripts where the shell script applies a series of transofrmation to a data file.

System Call Overhead

This estimates the cost of entering and leaving the operating system kernel, i.e. the overhead for performing a system call. It consists of a simple program repeatedly calling the getpid (which returns the process id of the calling process) system call. The time to execute such calls is used to estimate the cost of entering and exiting the kernel.

Graphical Tests

Both 2D and 3D graphical tests are provided; at the moment, the 3D suite in particular is very limited, consisting of the "ubgears" program. These tests are intended to provide a very rough idea of the system's 2D and 3D graphics performance. Bear in mind, of course, that the reported performance will depend not only on hardware, but on whether your system has appropriate drivers for it.

from http://code.google.com/p/byte-unixbench/
http://byte-unixbench.googlecode.com/files/UnixBench5.1.3.tgz
-----------------------------------------------------------------
http://unixbench.svn.sourceforge.net/
下载地址:http://unixbench.svn.sourceforge.net/viewvc/unixbench/?view=tar
--------------------------------------------------------------------------------

No comments:

Post a Comment