Linux测试CPU 整型算力和浮点数算力
1.sysbench:用于测试 CPU 整型算力
1.0 介绍
SysBench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试:
- cpu性能
- 磁盘io性能
- 调度程序性能
- 内存分配及传输速度
- POSIX线程性能
- 数据库性能(OLTP基准测试)
目前sysbench主要支持 MySQL,pgsql,Oracle 这3种数据库。
1.1 安装依赖
# 安装依赖-centerOS
sudo yum install automake libtool gcc -y
# 安装依赖-ubuntu
sudo apt install automake libtool gcc -y
1.2 下载并编译安装
# 下载sysbench源码包
wget https://github.com/akopytov/sysbench/archive/1.0.20.tar.gz -O sysbench-1.0.20.tar.gz
# 解压
tar -xvf sysbench-1.0.20.tar.gz
# 执行autogen.sh
cd sysbench-1.0.20
sh autogen.sh
# 生成Makefile
./configure --without-mysql
# 编译并安装
sudo make && sudo make install
# 查看安装结果(版本信息)
sysbench --version
1.3 调用测试
- 测试 4 线程,20000 内的质数计算能力
(base) jupiter@dell:/software/sysbench-1.0.20$ sysbench cpu --cpu-max-prime=20000 --threads=4 --time=60 run
# 参数解释
--cpu-max-prime=20000 测试计算素数直到某个最大值(20000)所需要的时间
--threads=4 使用线程数为4
--time=60 重复次数为60次
- 测试结果/Score : 1497.06
sysbench 1.0.20 (using bundled LuaJIT 2.1.0-beta2)
Running the test with following options:
Number of threads: 4
Initializing random number generator from current time
Prime numbers limit: 20000
Initializing worker threads...
Threads started!
CPU speed:
events per second: 1497.06
General statistics:
total time: 60.0026s
total number of events: 89830
Latency (ms):
min: 2.52
avg: 2.67
max: 22.63
95th percentile: 2.76
sum: 239972.33
Threads fairness:
events (avg/stddev): 22457.5000/42.39
execution time (avg/stddev): 59.9931/0.00
2.sysbench:用于测试 CPU 浮点型算力
2.1 安装依赖
# 安装依赖-centerOS
sudo yum install automake libtool gcc -y
# 安装依赖-ubuntu
sudo apt install automake libtool gcc -y
2.2 下载并编译安装
# 下载
wget http://soft.vpser.net/test/unixbench/unixbench-5.1.2.tar.gz
# 解压
tar zxvf unixbench-5.1.2.tar.gz
# 配置如果不需要进行图形测试或者不在图形化界面下测试,则将Makefile文件中GRAPHIC_TEST = defined注释掉
cd unixbench-5.1.2
make
# 安装依赖
sudo apt install -y perl
# 执行测试
./Run
2.3 测试结果说明
测试项目 | 项目说明 |
---|---|
Dhrystone 2 using register variables | 测试 string handling |
Double-Precision Whetstone | 测试浮点数操作的速度和效率 |
Execl Throughput | 此测试考察每秒钟可以执行的execI系统调用的次数 |
File Copy 1024 bufsize 2000 maxblocks | 测试从一个文件向另外一个文件传输数据的速率。 |
File Copy 256 bufsize 500 maxblocks | 测试从一个文件向另外一个文件传输数据的速率。 |
File Read 4096 bufsize 8000 maxblocks | 测试从一个文件向另外一个文件传输数据的速率。 |
Pipe-based Context Switching | 测试两个进程(每秒钟)通过一个管道交换一个不断增 长的整数的次数。 |
Pipe Throughput | 一秒钟内一个进程可以向一个管道写512字节数据然后 再读回的次数 |
Process Creation | 测试每秒钟一个进程可以创建子进程然后收回子进程的 次数(子进程一定立即退出)。 |
Shell Scripts (8 concurrent) | 测试一秒钟内一个进程可以并发地开始一个shell脚本 的n个拷贝的次数,n一般取值1,2,4,8. |
System Call Overhead | 测试进入和离开操作系统内核的代价,即一次系统调用 的代价。 |
2.4 测试结果
- 简略摘要
# 单核双精度浮点算力
Double-Precision Whetstone 5476.7 MWIPS
# 4核双精度浮点算力
Double-Precision Whetstone 21621.7 MWIPS
- 详细信息
========================================================================
BYTE UNIX Benchmarks (Version 5.1.2)
System: dell: GNU/Linux
OS: GNU/Linux -- 5.11.0-40-generic -- #44~20.04.2-Ubuntu SMP Tue Oct 26 18:07:44 UTC 2021
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
CPU 0: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
CPU 1: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
CPU 2: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
CPU 3: Intel(R) Core(TM) i5-6300HQ CPU @ 2.30GHz (4599.9 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
19:40:36 up 11 days, 9:27, 3 users, load average: 0.18, 0.34, 0.47; runlevel 5
------------------------------------------------------------------------
Benchmark Run: 一 11月 29 2021 19:40:36 - 20:08:45
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 35459584.6 lps (10.0 s, 7 samples)
Double-Precision Whetstone 5476.7 MWIPS (9.9 s, 7 samples)
Execl Throughput 3206.9 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 527819.0 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 137340.3 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1512668.7 KBps (30.0 s, 2 samples)
Pipe Throughput 710906.8 lps (10.0 s, 7 samples)
Pipe-based Context Switching 151493.2 lps (10.0 s, 7 samples)
Process Creation 6097.0 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 6869.6 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 2230.7 lpm (60.0 s, 2 samples)
System Call Overhead 400377.9 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 35459584.6 3038.5
Double-Precision Whetstone 55.0 5476.7 995.8
Execl Throughput 43.0 3206.9 745.8
File Copy 1024 bufsize 2000 maxblocks 3960.0 527819.0 1332.9
File Copy 256 bufsize 500 maxblocks 1655.0 137340.3 829.9
File Copy 4096 bufsize 8000 maxblocks 5800.0 1512668.7 2608.0
Pipe Throughput 12440.0 710906.8 571.5
Pipe-based Context Switching 4000.0 151493.2 378.7
Process Creation 126.0 6097.0 483.9
Shell Scripts (1 concurrent) 42.4 6869.6 1620.2
Shell Scripts (8 concurrent) 6.0 2230.7 3717.8
System Call Overhead 15000.0 400377.9 266.9
========
System Benchmarks Index Score 1007.7
------------------------------------------------------------------------
Benchmark Run: 一 11月 29 2021 20:08:45 - 20:36:59
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 136159740.8 lps (10.0 s, 7 samples)
Double-Precision Whetstone 21621.7 MWIPS (9.9 s, 7 samples)
Execl Throughput 10934.3 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 1144908.0 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 300291.5 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 3433079.5 KBps (30.0 s, 2 samples)
Pipe Throughput 2704214.4 lps (10.0 s, 7 samples)
Pipe-based Context Switching 565815.4 lps (10.0 s, 7 samples)
Process Creation 31990.1 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 17826.7 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 2525.2 lpm (60.1 s, 2 samples)
System Call Overhead 1474932.5 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 136159740.8 11667.5
Double-Precision Whetstone 55.0 21621.7 3931.2
Execl Throughput 43.0 10934.3 2542.9
File Copy 1024 bufsize 2000 maxblocks 3960.0 1144908.0 2891.2
File Copy 256 bufsize 500 maxblocks 1655.0 300291.5 1814.5
File Copy 4096 bufsize 8000 maxblocks 5800.0 3433079.5 5919.1
Pipe Throughput 12440.0 2704214.4 2173.8
Pipe-based Context Switching 4000.0 565815.4 1414.5
Process Creation 126.0 31990.1 2538.9
Shell Scripts (1 concurrent) 42.4 17826.7 4204.4
Shell Scripts (8 concurrent) 6.0 2525.2 4208.6
System Call Overhead 15000.0 1474932.5 983.3
========
System Benchmarks Index Score 2980.8
评论 (0)