Linux跑分-unixbench性能测试
我们在选择和评论一款VPS的性能时候,从理论上我们会从配置信息、硬件对比,以及带宽速度,包括这里老蒋要分享的UnixBench跑分测试。尤其是跑分测试数据基本上可以反映出这款VPS的整体性能数据,但是也不能作为唯一参考。比如之前我在Linode VPS上面测试的跑分数据在500-700之间,但是有些OPENVZ VPS跑分在2000-3000,UnixBench跑分仅仅是作为参考,一般在400分以上都差不多。
// 安装运行环境
yum install -y make gcc g++
// 下载
wget https://github.com/aliyun/byte-unixbench/releases/download/v5.1.6/UnixBench-5.1.6.tar.gz
// 解压
tar -zxvf UnixBench-5.1.6.tar.gz
// 运行,从releases下载的是已经编译好了的
cd /UnixBench-5.1.6/UnixBench
./Run
数据解读
# 测试聚焦在字符串处理,没有浮点运算操作。这个测试用于测试链接器编译、代码优化、内存缓存、等待状态、整数数据类型等,硬件和软件设计都会非常大的影响测试结果。
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
# 此测试考察每秒钟可以执行的 execl 系统调用的次数
1 x Execl Throughput 1 2 3
# 测试从一个文件向另外一个文件传输数据的速率
1 x File Copy 1024 bufsize 2000 maxblocks 1 2 3
# 测试从一个文件向另外一个文件传输数据的速率。
1 x File Copy 256 bufsize 500 maxblocks 1 2 3
# 测试从一个文件向另外一个文件传输数据的速率。
1 x File Copy 4096 bufsize 8000 maxblocks 1 2 3
# 一秒钟内一个进程可以向一个管道写 512 字节数据然后再读回的次数
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 System Call Overhead 1 2 3 4 5 6 7 8 9 10
# 测试一秒钟内一个进程可以并发地开始一个shell 脚本的 n 个拷贝的次数,n 一般取值1,2,4,8.
1 x Shell Scripts (1 concurrent) 1 2 3
1 x Shell Scripts (8 concurrent) 1 2 3
2 x Dhrystone 2 using register variables 1 2 3 4 5 6 7 8 9 10
2 x Double-Precision Whetstone 1 2 3 4 5 6 7 8 9 10
2 x Execl Throughput 1 2 3
2 x File Copy 1024 bufsize 2000 maxblocks 1 2 3
2 x File Copy 256 bufsize 500 maxblocks 1 2 3
2 x File Copy 4096 bufsize 8000 maxblocks 1 2 3
2 x Pipe Throughput 1 2 3 4 5 6 7 8 9 10
2 x Pipe-based Context Switching 1 2 3 4 5 6 7 8 9 10
2 x Process Creation 1 2 3
2 x System Call Overhead 1 2 3 4 5 6 7 8 9 10
2 x Shell Scripts (1 concurrent) 1 2 3
2 x Shell Scripts (8 concurrent) 1 2 3
========================================================================
############ 系统的基本信息 ####################
BYTE UNIX Benchmarks (Version 5.1.6)
System: VM-16-12-centos: GNU/Linux
OS: GNU/Linux -- 3.10.0-1160.31.1.el7.x86_64 -- #1 SMP Thu Jun 10 13:32:12 UTC 2021
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
CPU 0: Intel(R) Xeon(R) Gold 6133 CPU @ 2.50GHz (4988.3 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
CPU 1: Intel(R) Xeon(R) Gold 6133 CPU @ 2.50GHz (4988.3 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
17:18:21 up 44 min, 2 users, load average: 0.16, 0.09, 0.11; runlevel 2021-11-03
------------------------------------------------------------------------
########### 单核心跑分情况
Benchmark Run: Wed Nov 03 2021 17:18:21 - 17:46:24
2 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 30242862.5 lps (10.0 s, 7 samples)
Double-Precision Whetstone 4057.4 MWIPS (9.2 s, 7 samples)
Execl Throughput 2143.2 lps (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 404486.7 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 114360.9 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1217538.3 KBps (30.0 s, 2 samples)
Pipe Throughput 597871.6 lps (10.0 s, 7 samples)
Pipe-based Context Switching 41061.2 lps (10.0 s, 7 samples)
Process Creation 7089.6 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 4693.1 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 927.7 lpm (60.0 s, 2 samples)
System Call Overhead 382315.4 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 30242862.5 2591.5
Double-Precision Whetstone 55.0 4057.4 737.7
Execl Throughput 43.0 2143.2 498.4
File Copy 1024 bufsize 2000 maxblocks 3960.0 404486.7 1021.4
File Copy 256 bufsize 500 maxblocks 1655.0 114360.9 691.0
File Copy 4096 bufsize 8000 maxblocks 5800.0 1217538.3 2099.2
Pipe Throughput 12440.0 597871.6 480.6
Pipe-based Context Switching 4000.0 41061.2 102.7
Process Creation 126.0 7089.6 562.7
Shell Scripts (1 concurrent) 42.4 4693.1 1106.9
Shell Scripts (8 concurrent) 6.0 927.7 1546.1
System Call Overhead 15000.0 382315.4 254.9
========
System Benchmarks Index Score 712.4
------------------------------------------------------------------------
########### 整体跑分情况
Benchmark Run: Wed Nov 03 2021 17:46:24 - 18:14:36
2 CPUs in system; running 2 parallel copies of tests
Dhrystone 2 using register variables 59846268.9 lps (10.0 s, 7 samples)
Double-Precision Whetstone 7782.5 MWIPS (9.9 s, 7 samples)
Execl Throughput 3964.4 lps (30.0 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 618072.5 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 161525.5 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1934016.5 KBps (30.0 s, 2 samples)
Pipe Throughput 1133058.0 lps (10.0 s, 7 samples)
Pipe-based Context Switching 138129.7 lps (10.0 s, 7 samples)
Process Creation 12641.4 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 6468.6 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 976.9 lpm (60.1 s, 2 samples)
System Call Overhead 701379.4 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 59846268.9 5128.2
Double-Precision Whetstone 55.0 7782.5 1415.0
Execl Throughput 43.0 3964.4 922.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 618072.5 1560.8
File Copy 256 bufsize 500 maxblocks 1655.0 161525.5 976.0
File Copy 4096 bufsize 8000 maxblocks 5800.0 1934016.5 3334.5
Pipe Throughput 12440.0 1133058.0 910.8
Pipe-based Context Switching 4000.0 138129.7 345.3
Process Creation 126.0 12641.4 1003.3
Shell Scripts (1 concurrent) 42.4 6468.6 1525.6
Shell Scripts (8 concurrent) 6.0 976.9 1628.2
System Call Overhead 15000.0 701379.4 467.6
========
System Benchmarks Index Score 1233.9
公有云数据对比
各公有云1核1G的云主机跑分对比,数据来自常见公有云机器的unixbench跑分对比