unixbench服务器性能测试

 

使用 Unixbench5 进行linux系统服务器性能综合测试前端

1.简介
Unixbench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被普遍用与测试linux系统主机的性能,简称UB。Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。

测试项目:
Dhrystone
这个基准测试使用来计算和比较计算机性能的。因为没有浮点操做,这个测试主要集中在字符串处理上。这个测试深受如下因素的影响:硬件和软件设计,编译程序和连接程序选项,代码优化 ,高速缓冲存储器, 等待状态和整数数据类型。
Whetstone
这个测试测量浮点运算速度和效率。这个测试包含几个模块,这些模块被认为是由在典型运用在科学应用中的操做组成的混合体。 各类各样的C函数,包括sin、cos、sqrt、exp和log还有整形,浮点算术操做、数组访问、条件转移和过程调用,都使用了。 整数和浮点算术,在这个测试中都会计算。
Execl Throughput
这个测试计算每秒钟出现的execl调用数。Execl是 exec 函数家族的一部分。它用一个新的进程映像更新当前的进程映像。 它和许多其余类似的命令都是execve()的前端程序。
File Copy
这个测试测量使用不一样的缓冲区大小时,数据能够从一个文件被传输到另外一个的速率。文件的读写复制测试能够得到在指定时间内(默认为10秒)可以读、写、复制的字符数目。
Pipe Throughput
管道是进程间通讯最简单的方式之一。管道吞吐量指的是每秒中,一个进程能将512个字节数据写入管道和从管道中回读它们的次数。这个测试在真实的程序设计中并无对应物。
Pipe-based Context Switching
这个测试是计算两个进程经过管道交换一个增加的整数的次数。基于管道的上下文切换测试更像一个真实的应用程序。这个测试产生一个能够用来继续双向管对话的子进程。
Process Creation
这个测试计算一个进程派生和收获一个立刻退出的子进程的次数。因为进程建立涉及建立进程控制块和为新的进程分配内存,所以这项测试直接取决于内存带宽。这个测试通常地会用于比较各类各样的操做系统进程建立调用的执行。
Shell Scripts
这个shells scripts测试测量每秒进程可以启动和收获一组1,2,4,8个shell脚本程序的并行的拷贝的次数。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
这个测试是估计进入和离开操做系统内核的开销。例如执行一个系统调用的开销。它由一个简单的系统组成,这个系统重复的调用getid系统调用,getid返回调用进程的进程IS号。这个测试是用执行这些调用的时间来估算进入和离开内核的开销。
Graphical Tests
这个测试提供了2D,3D的图形化测试。报告性能不只依赖于硬件,还与你的系统是否对硬件有合适的驱动程序有关 。

安装

yum -y install gcc gcc-c autoconf gcc-c++ time
wget http://www.ctohome.com/linux-vps-pack/unixbench-5.1.2.tar.gz
tar xzf unixbench-5.1.2.tar.gz
cd unixbench-5.1.2

默认unixbench只支持到16cores,修改参数,取消此限制linux

sed -i "s/GRAPHIC_TESTS = defined/#GRAPHIC_TESTS = defined/g" ./Makefile
make; sed -i "s/\"System Benchmarks\", 'maxCopies' => 16/\"System Benchmarks\", 'maxCopies' => 0/" Run sed -i 's/$copies > $maxCopies/$maxCopies > 0 \&\& $copies > $maxCopies/' Run
for i in `seq 1 5`;do ./Run ;done
相关文章
相关标签/搜索