1.下载

https://github.com/kdlucas/byte-unixbench/archive/v5.1.3.tar.gz

2.修改Makefile 交叉编译

#CC=gcc
CC = arm-linux-gnueabihf-gcc

3.make

4.修改Run

将main函数中的 preChecks();注释掉,因为其中有 system("make all");

5.将编译过的整个byte-unixbench-5.1.3拷贝到开发板上。
已经手动编译过了,此时Run是在小板子上。

http://bbs.eeworld.com.cn/thread-503566-1-1.html

测试介绍
================================
UnixBench源于1995 年,基线系统是“George”,一个工作站:SPARCstation 20‐61,128MB
RAM,Solaris2.3,此系统的指数值被设定为10,所以,如果一个系统的最后结果分数为520,意思是指此系统比基线系统运行快52 倍。
UnixBench也支持多CPU系统的测试,默认的行为是测试两次,第一次是一个进程的测试,第二次是N份测试,N等于CPU个数。这样的设计是为了以下目标:
测试系统的单任务性能
测试系统的多任务性能
测试系统并行处理的能力
UnixBench一个基于系统的基准测试工具,不单纯是CPU 内存 或者磁盘测试工具。测试结果不仅仅取决于硬件,也取决于系统、开发库、甚至是编译器。

Dhrystone测试
测试聚焦在字符串处理,没有浮点运算操作。这个测试用于测试链接器编译、代码优化、内存缓存、等待状态、整数数据类型等,硬件和软件设计都会非常大的影响测试结果。

Whetstone 测试
这项测试项目用于测试浮点运算效率和速度。这项测试项目包含若干个科学计算的典型性能模块,包含大量的C语言函数,sin cos sqrt exp和日志以及使用整数和浮点的数学操作。包含数组访问、条件分支和过程调用。

Execl Throughput测试
(execl 吞吐,这里的execl是类unix系统非常重要的函数,非办公软件的excel)
这项测试测试每秒execl函数调用次数。execl是 exec函数家族的一部分,使用新的图形处理代替当前的图形处理。有许多命令和前端的execve()函数命令非常相似。

File Copy测试
这项测试衡量文件数据从一个文件被传输到另外一个,使用大量的缓存。包括文件的读、写、复制测试,测试指标是一定时间内(默认是10秒)被重写、读、复制的字符数量。

Pipe Throughput(管道吞吐)测试
pipe是简单的进程之间的通讯。管道吞吐测试是测试在一秒钟一个进程写512比特到一个管道中并且读回来的次数。管道吞吐测试和实际编程有差距。

Pipe-based Context Switching (基于管道的上下文交互)测试
这项测试衡量两个进程通过管道交换和整数倍的增加吞吐的次数。基于管道的上下文切换和真实程序很类似。测试程序产生一个双向管道通讯的子线程。

Process Creation(进程创建)测试
这项测试衡量一个进程能产生子线程并且立即退出的次数。新进程真的创建进程阻塞和内存占用,所以测试程序直接使用内存带宽。这项测试用于典型的比较大量的操作系统进程创建操作。

Shell Scripts测试
shell脚本测试用于衡量在一分钟内,一个进程可以启动并停止shell脚本的次数,通常会测试1,2, 3, 4, 8 个shell脚本的共同拷贝,shell脚本是一套转化数据文件的脚本。

System Call Overhead (系统调用消耗)测试
这项测试衡量进入和离开系统内核的消耗,例如,系统调用的消耗。程序简单重复的执行getpid调用(返回调用的进程id)。消耗的指标是调用进入和离开内核的执行时间。
================================


测试方法
首先确保被测试系统干净,没有后台大量占用资源的程序在运行。比较简单的方法是烧写一个新系统,做简单必要配置后,重启,就是一个干净的测试平台。如果是对比测试,把能控制的因素都控制成相同。比如测试Raspberry
2和3的时候,就可以使用同一张存储卡,系统版本也要保持一致。
把测试软件传到被测系统中,可以通过FTP等方法传输。
解压缩tar.gz包:

  1. tar -xvf unixbench-5.1.2.tar.gz
  2. cd unixbench-5.1.2

复制代码

如果是针对服务器等非图形环境的测试,需要关掉图形测试。
编辑文件Makefile

  1. vim Makefile

复制代码

注释掉GRAPHIC_TESTS = defined这一行,也就是在这一行开头加个“#”号。我这个版本是在第46行。
保存文件。
编译
  1. make clean
  2. make all

复制代码

如果没有错误,就可以运行测试了
  1. ./Run

复制代码

在Raspberry上测试一次的时间大约是半小时左右。测试完成后,结果会在屏幕上显示出来,也可以在results目录里找到保存测试结果和相关log。
文件USAGE里写了更详细的测试参数,部分参数如下图

 
如果是一般测试,使用没有参数的默认设置就可以了,在多核系统上,软件会测试单核性能和多核性能各1次。
为了严谨起见,这样的测试应该测试多次,然后分数取平均值。不过既然是非专业测试,通常测试几次后发现分数比较稳定后,取其中一次作代表就可以了。如果分数波动很大,那就需要找找原因了。
 
 
 
 
http://blog.sina.com.cn/s/blog_7695e9f40100yimf.html
 
unixbench5测试内容包含了system、2d、3d、misc测试项。system测试系统的一些基本功能;2d测试2D图形加速;3d测试3D加速;misc测试诸如字符,整型等测试。详情见下面。

system:

dhry2reg         Dhrystone 2 using register variables

whetstone-double Double-Precision Whetstone

syscall          System Call Overhead

pipe             Pipe Throughput

context1         Pipe-based Context Switching

spawn            Process Creation

execl            Execl Throughput

fstime-w         File Write 1024 bufsize 2000 maxblocks

fstime-r         File Read 1024 bufsize 2000 maxblocks

fstime           File Copy 1024 bufsize 2000 maxblocks

fsbuffer-w       File Write 256 bufsize 500 maxblocks

fsbuffer-r       File Read 256 bufsize 500 maxblocks

fsbuffer         File Copy 256 bufsize 500 maxblocks

fsdisk-w         File Write 4096 bufsize 8000 maxblocks

fsdisk-r         File Read 4096 bufsize 8000 maxblocks

fsdisk           File Copy 4096 bufsize 8000 maxblocks

shell1           Shell Scripts (1 concurrent) (runs "looper 60 multi.sh 1")

shell8           Shell Scripts (8 concurrent) (runs "looper 60 multi.sh 8")

shell16          Shell Scripts (8 concurrent) (runs "looper 60 multi.sh 16")

2d:

2d-rects         2D graphics: rectangles

2d-lines         2D graphics: lines

2d-circle        2D graphics: circles

2d-ellipse       2D graphics: ellipses

2d-shapes        2D graphics: polygons

2d-aashapes      2D graphics: aa polygons

2d-polys         2D graphics: complex polygons

2d-text          2D graphics: text

2d-blit          2D graphics: images and blits

2d-window        2D graphics: windows

3d:

ubgears          3D graphics: gears

misc:

C                C Compiler Throughput ("looper 60 $cCompiler cctest.c")

arithoh          Arithoh (huh?)

short            Arithmetic Test (short) (this is arith.c configured for

"short" variables; ditto for the ones below)

int              Arithmetic Test (int)

long             Arithmetic Test (long)

float            Arithmetic Test (float)

double           Arithmetic Test (double)

dc               Dc: sqrt(2) to 99 decimal places (runs

"looper 30 dc < dc.dat", using your system's copy of "dc")

hanoi            Recursion Test -- Tower of Hanoi

grep             Grep for a string in a large file, using your system's

copy of "grep"

sysexec          Exercise fork() and exec().

unixbench5包含system和graphic测试,如果你需要测试graphic,则需要修改Makefile,不要注释掉"GRAPHIC_TESTS = defined,同时需要系统提供x11perf命令gl_glibs库。

进入源包,执行

make

◆   执行system测试方法:Run

◆   执行graphic测试方法:Run graphics

◆   执行system,graphics测试方法:Run gindex

Run用法

Run [ -q | -v ] [-i <n> ] [-c <n> [-c <n> ...]] [test ...]

选项说明:

-q

不显示测试过程

-v

显示测试过程

-i <count>

执行次数,最低3次,默认10

-c <n>

每次测试并行n个copies(并行任务)

备注:-c选项可以用来执行多次,如:

Run -c 1 -c 4表示执行两次,第一次单个copies,第二次4个copies的测试任务。

对于多cpu系统的性能测试策略,需要统计单任务,多任务及其并行的性能增强。

以4个cpu的PC为例,需要测试两次,4个CPU就是要并行执行4个copies,

Run -q -c 1 -c 4

测试结果单个并行的任务的得分为171.3,4个并行任务的得分为395.7。对比测试时需要关注这个值。

unixbench的更多相关文章

  1. UnixBench测试

    安装: 1. UnixBench from version 5.1 on has both system and graphics tests.    If you want to use the g ...

  2. 安装 unixbench 报错解决方法

    一.准备工作 1.首先使用root用户登陆. 2.运行Unixbeanch需要GCC的支持,在安装Unixbeanch之前,需要先安装GCC,在Debian中,直接执行如下命令: 复制代码 代码如下: ...

  3. unixbench 物理机性能与虚拟机性能测试对比

    1.  测试方法 wget https://download.laobuluo.com/tools/UnixBench5.1.3.tgz tar -zxvf UnixBench5.1.3.tgz cd ...

  4. Linux性能测试工具-UnixBench

    ■下载路径: unixbench-5.1.2.tar.gz :http://soft.vpser.net/test/unixbench/ unixbench-5.1.3.tar.gz :http:// ...

  5. LINUX系统下跑分测试脚本:unixbench.sh

    linux 系统跑分测试脚本:     一.下载脚本:        wget http://teddysun.com/wp-content/uploads/unixbench.sh 二.更改权限:  ...

  6. linux主机上,UnixBench性能测试工具使用

    1,下载  wget http://soft.laozuo.org/scripts/UnixBench5.1.3.tgz [root@VM_0_15_centos test]# [root@VM_0_ ...

  7. VPS性能综合测试(6):UnixBench跑分工具测试

    测试时间可能会比较长,请耐心等待.最后UnixBench会详细列出各个测试项目的得分情况,以及VPS性能的综合跑分结果 UinxBench 的使用 使用方法如下: Run [ -q | -v ] [- ...

  8. VPS性能综合测试(5):UnixBench工具介绍

    UnixBench 介绍 UnixBench 是一个类 unix (Unix, BSD, Linux 等) 系统下的性能测试工具,它是一个开源工具.可以用于测试系统主机的性能. UnixBench 进 ...

  9. unixbench安装使用

    UnixBench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能.Unixbench的主要测试项目有:系统调用.读写.进程. ...

  10. unixbench安装及使用

    unixbench 是一个用于測试 unix 系统性能的工具.也是一个比較通用的 benchmark, 此測试的目的是对类Unix 系统提供一个主要的性能指示,非常多測试用于系统性能的不同方面,这些測 ...

随机推荐

  1. SQL 批量修改一个字段的值为另一个字段的值

    AND create_time BETWEEN '2016-07-25 14:30:00' AND '2016-07-25 15:20:28'; AND create_time BETWEEN '20 ...

  2. Spring、Hibernate、Struts官方下载地址

    hibernate 官网: http://hibernate.org/ hibernate3 官方下载:http://sourceforge.net/projects/hibernate/files/ ...

  3. Python List 列表list()方法

    Python基础数据类型之一列表list,在python中作用很强在,列表List可以包含不同类型的数据对像,同时它是一个有序的变量集合,每个变量可以存储一个地址.所有序列能用到的标准操作方法,列表也 ...

  4. 二十五、python中pickle序列学习(仅python语言中有)

    1.pickle序列介绍:提供4个关键字:dumps,dump,loads,load 语法:f.write(pickle.dumps(dict))=pickle.dump(dict,f) " ...

  5. @TableLogic表逻辑处理注解(逻辑删除)

    在字段上加上这个注解再执行BaseMapper的删除方法时,删除方法会变成修改 例: 实体类:    @TableLogic private Integer del;   service层: 调用Ba ...

  6. spring自动注入的三种方式

    所谓spring自动注入,是指容器中的一个组件中需要用到另一个组件(例如聚合关系)时,依靠spring容器创建对象,而不是手动创建,主要有三种方式: 1. @Autowired注解——由spring提 ...

  7. log4j 不输出mybatis的sql

    有可能导入多个日志工具jar,导致mybatis不知道使用哪种日志.修改你的mybatis配置,添加setting,指定日志类型为log4j. <configuration> <!- ...

  8. Java JDK安装教程以及JDK多版本间快速切换配置

    原本想自己写一篇,结果在网上发现一篇写的特别好的博文,大家可以去原网址围观浏览加点赞, 只是搬运工+迷弟. 原文地址:https://blog.csdn.net/qq_38916130/article ...

  9. mac 添加mysql的环境变量和删除mysql

    添加环境变量 1.创建 .bash_profile,已创建过忽略这步 (1)启动终端 (2)进入当前用户的home目录(默认就是):         cd ~ 或 cd /Users/YourMacU ...

  10. js中ajax请求返回的数据处理成数组后,局部变量赋值给全局变量后,为空

    第二步是想把ss的值扔给res_r,两个数组直接相等即可,可谁想到,取出来的值是空. 如图取出来的值是空. 我一脸懵逼,调试了些许时间,最后把ss遍历一下,在重新push进res_r 再来看效果,已经 ...