Rockchip的linux性能测试工具以及优化
(2019-03-08 14:00:14)性能测试:
1.
========
glmark2 2017.07
OpenGL Information
GL_VENDOR:
ARM
GL_RENDERER: Mali-T860
GL_VERSION: OpenGL ES 3.2
v1.r14p0-01rel0-git(966ed26).f44c85cb3d2ceb87e8be88e7592755c3
glmark2 Score:
52
glmark2 Score:
655
glmark2 Score:
63
glmark2 Score:
818
1. UnixBench测试
UnixBench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能。Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。
最新版本UnixBench5.1.3,包含system和graphic测试,如果你需要测试graphic,则需要修改Makefile,不要注释掉”GRAPHIC_TESTS
= defined”,同时需要系统提供x11perf命令gl_glibs库。
下面的脚本使用了最新版UnixBench5.1.3来测试,注释了关于graphic的测试项(大多数VPS都是没有显卡或者是集显,所以图像性能无需测试),运行10-30分钟后(根据CPU内核数量,运算时间不等)得出分数,越高越好。
测试在debian64/rk3399 evb挖掘机上, cpu/ddr/gpu在最高频率的情况下测试:
(需要连接上网络测试)
- wget --no-check-certificate
https://github.com/teddysun/across/raw/master/unixbench.sh
- chmod +x unixbench.sh
- ./unixbench.sh
Benchmark Run: Fri Mar 08 2019 04:22:50 - 04:50:43
0 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables
15701621.8
lps (10.0 s, 7 samples)
Double-Precision Whetstone
2522.3 MWIPS (9.7 s, 7 samples)
Execl Throughput
2754.2 lps
(29.6 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks
281424.3
KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks
104299.2 KBps (30.0 s, 2
samples)
File Copy 4096 bufsize 8000 maxblocks
630989.0
KBps (30.0 s, 2 samples)
Pipe Throughput
761728.4 lps
(10.0 s, 7 samples)
Pipe-based Context Switching
69150.1 lps
(10.0 s, 7 samples)
Process Creation
4178.7 lps
(30.0 s, 2 samples)
Shell Scripts (1 concurrent)
3790.6
lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent)
1201.7
lpm (60.0 s, 2 samples)
System Call Overhead
717097.3 lps
(10.0 s, 7 samples)
System Benchmarks Index Values
BASELINE
RESULT
INDEX
Dhrystone 2 using register variables
116700.0
15701621.8
1345.5
Double-Precision Whetstone
55.0
2522.3
458.6
Execl Throughput
43.0
2754.2
640.5
File Copy 1024 bufsize 2000 maxblocks
3960.0
281424.3
710.7
File Copy 256 bufsize 500 maxblocks
1655.0
104299.2
630.2
File Copy 4096 bufsize 8000 maxblocks
5800.0
630989.0
1087.9
Pipe Throughput
12440.0
761728.4
612.3
Pipe-based Context Switching
4000.0
69150.1
172.9
Process Creation
126.0
4178.7
331.6
Shell Scripts (1 concurrent)
42.4
3790.6
894.0
Shell Scripts (8 concurrent)
6.0
1201.7
2002.8
System Call Overhead
15000.0
717097.3
478.1
System Benchmarks Index Score
650.9
测试项目
Dhrystone测试
测试聚焦在字符串处理,没有浮点运算操作。这个测试用于测试链接器编译、代码优化、内存缓存、等待状态、整数数据类型等,硬件和软件设计都会非常大的影响测试结果。
Whetstone 测试
这项测试项目用于测试浮点运算效率和速度。这项测试项目包含若干个科学计算的典型性能模块,包含大量的C语言函数,sin cos sqrt exp和日志以及使用整数和浮点的数学操作。包含数组访问、条件分支和过程调用。
Execl Throughput(execl 吞吐,这里的execl是类unix系统非常重要的函数,非办公软件的execl)测试
这项测试测试每秒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)。消耗的指标是调用进入和离开内核的执行时间。
Graphical Tests(图形)测试
由”ubgears”程序组成,测试非常粗的2D和3D图形性能,尤其是3D测试非常有限。测试结果和硬件,系统合适的驱动关系很大。
2. glmark2的测试
现在发布出去的sdk, buildroot/debian都已集成glamrk2供测试评估gpu性能.
Debian上测试结果:
(1) 预安装的方法如下:
sudo apt-get install git g++
build-essential pkg-config
sudo apt-get install libx11-dev libgl1-mesa-dev
sudo apt-get install libjpeg-dev libpng-dev
cd ~/
git
clone
cd glmark2/
./waf configure —with-flavors=x11-glesv2
./waf build -j 4
sudo ./waf install
su linaro -c "DISPLAY=:0.0 /usr/local/bin/glmark2"
拷机:
su linaro -c "DISPLAY=:0.0 glmark2-es2 --benchmark refract --run-forever --off-screen"
(2) 原生系统直接测试:
Debian是基于X11性能相对会差一些,测试命令如下: test_glmark.sh, 挖掘机默认是2k
edp的测试结果是
root@linaro-alip:/usr/local/bin#
test_glmark2.sh
performance
running glmark2 for testing GPU!!
=======================================================
=======================================================
=======================================================
....
=======================================================
=======================================================
----
off-screen测试结果如下:
=======================================================
=======================================================
绑定到cpu4-5,大核上的性能情况:
full-screen:
=======================================================
=======================================================
off-screen:
=======================================================
=======================================================
3. Openface的评测 (参考:http://blog.sina.com.cn/s/blog_a6559d920102z211.html)