几款优秀的Linux基准测试工具
2017-01-09 23:26
363 查看
CSDN | GitHub |
---|---|
几款优秀的Linux基准测试工具 | AderXCoding/system/tools/benchmark |
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, 谢谢.
1 性能基准测试工具
基准测试是指运行计算机程序去评估硬件和软件性能的行为. 硬件基本测试包括评估处理器, 内存, 显卡, 硬盘, 网络等不同组件的性能.基准测试有两类 : 复合和应用
复合基准对一个硬件执行压力测试, 如连续写入和读取数据. 应用基准则是衡量真实世界应用程序如数据库和服务器的性能.
基准测试软件可以让系统测试者和用户客观独立的评估硬件性能.
依据其测试类型的不同可以分为 基准性能测试, 文件
I/O性能测试, 网络性能测试, 以及多功能的性能测试工具
Linux下有许多优秀的开源
Linux基准测试工具, 如
Phoronix Test Suite,
IOzone,
netperf等,
2 标准的性能基准测试工具
benchmark | 描述 |
---|---|
sysbench | sysbench是一款开源的多线程性能测试工具, 可以执行 CPU/内存/线程/ IO/数据库等方面的性能测试. 简介数据库目前支持 MySQL/Oracle/PostgreSQL |
hackbench | 源码下载地址 hackbench.c, 改进的用于测试调度器性能的 benchmark 工具, 就一个源文件,编译后运行即可, 手册 |
unixbench | 一个用于测试unix系统性能的工具,也是一个比较通用的 benchmark, 此测试的目的是对类 Unix系统提供一个基本的性能指示, 参见Linux性能测试工具-UnixBench–安装以及结果分析 |
CineBench | 很有说服力的一套CPU和显卡测试系统 |
GreekBench | Geekbench测试你的计算机的CPU处理器和内存性能 |
LLCbench | (底层表征基准测试 ow-Level Characterization Benchmarks) 是一个基准测试工具,集成了 MPBench, CacheBench, 和 BLASBench测试方法 |
HardInfo | 一个Linux系统信息查看软件. 它可以显示有关的硬件, 软件, 并进行简单的性能基准测试 |
GtkPerf | 是一种应用程序设计,测试基于GTK +的性能 |
六款优秀的 Linux 基准测试工具
3 文件 I/O
性能基准测试工具
benchmark | 描述 |
---|---|
iozone | iozone 是一款 Linux文件系统性能测试工具. 它可以测 Reiser4, ext3, ext4 |
iometer | Iometer是一个工作在单系统和集群系统上用来衡量和描述 I/O子系统的工具 |
bonnie++ | Bonnie++是一个用来测试 UNIX文件系统性能的测试工具, 主要目的是为了找出系统的性能瓶颈, 其名字来源于作者喜爱的歌手 Bonnie Raitt |
dbench | Dbench和Tbench是用来模拟工业标准的Netbench负载测试工具来评估文件服务器的测试工具 |
4 网络性能测试工具
Netperf是一种网络性能的测量工具, 主要针对基于
TCP或UDP的传输
Netperf是一种网络性能的测量工具, 主要针对基于
TCP或
UDP的传输.
Netperf根据应用的不同, 可以进行不同模式的网络性能测试, 即批量数据传输(
bulk data transfer)模式和请求/应答(
request/reponse)模式
Netperf测试结果所反映的是两个系统之间发送和接受数据的速度和效 率。
Netperf工具是基于C/S模式的。server端是netserver,用来侦听来自client端的连接,client 端是netperf,用来向server发起网络测试。在client与server之间,首先建立一个控制连接,传递有关测试配置的信息,以及测试的结 果;在控制连接建立并传递了测试配置信息以后,client与server之间会再建立一个测试连接,用来来回传递着特殊的流量模式,以测试网络的性能。
5 基准测试工具套件
工具 | 描述 |
---|---|
Phoronix Test Suite | 知名评测机构 Phoronix提供的 linux平台测试套件 |
perf | Linux内核中的系统性能调优工具, Perf Event 是一款随 Linux 内核代码一同发布和维护的性能诊断工具,由内核社区维护和发展。Perf 不仅可以用于应用程序的性能统计分析,也可以应用于内核代码的性能统计和分析。得益于其优秀的体系结构设计,越来越多的新功能被加入 Perf,使其已经成为一个多功能的性能统计工具集 。在第一部分,将介绍 Perf 在应用程序开发上的应用 |
rt-tests | “Cyclictest is a high resolution test program, written by User:Tglx, maintained by User:Clark Williams”, 也就是它是一个高精度的测试程序, Cyclictest是 rt-tests下的一个测试工具, 也是 rt-tests下使用最广泛的测试工具, 一般主要用来测试使用内核的延迟, 从而判断内核的实时性. |
5.1 phoronix.com
phoronix.com是业内一个知名的网站,其经常发布硬件性能测评以及
Linux系统相关的性能测评,
Phoronix Test Suite为该网站旗下的
linux平台测试套件,
Phoronix测试套件遵循
GNU GPLv3协议.
Phoronix Test Suite默认是通过命令行来的进行测试的, 但也可以调用
GUI,
Phoronix Test Suite还提供了上传测试结果的服务,也就说你可以把你的测试结果上传在网上,从而可以和别的
Linux用户测出来的结果进行对比.
5.2 内核中的Perf
Perf是用来进行软件性能分析的工具.
通过它, 应用程序可以利用
PMU, tracepoint和内核中的特殊计数器来进行性能统计. 它不但可以分析指定应用程序的性能问题 (
per thread), 也可以用来分析内核的性能问题, 当然也可以同时分析应用代码和内核, 从而全面理解应用程序中的性能瓶颈.
最初的时候, 它叫做
Performance counter, 在
2.6.31中第一次亮相. 此后他成为内核开发最为活跃的一个领域. 在
2.6.32中它正式改名为
Performance Event, 因为
perf已不再仅仅作为
PMU的抽象, 而是能够处理所有的性能相关的事件.
使用
perf, 您可以分析程序运行期间发生的硬件事件. 比如
instructions retired,
processor clock cycles等; 您也可以分析软件事件, 比如
Page Fault和进程切换.
这使得
Perf拥有了众多的性能分析能力. 举例来说, 使用
Perf可以计算每个时钟周期内的指令数, 称为
IPC,
IPC偏低表明代码没有很好地利用
CPU.
Perf还可以对程序进行函数级别的采样, 从而了解程序的性能瓶颈究竟在哪里等等.
Perf还可以替代
strace, 可以添加动态内核
probe点, 还可以做
benchmark衡量调度器的好坏.
人们或许会称它为进行性能分析的”瑞士军刀” 和 “倚天剑”.
5.3 rt-tests
cyclictest测试内核的性能, 包括了hackbench,
cyclictest等多个
benchmark工具
Cyclictest的维基主页这么介绍它“Cyclictest is a high resolution test program, written by User:Tglx, maintained by User:Clark Williams ”,也就是它是一个高精度的测试程序,
Cyclictest是
rt-tests下的一个测试工具,也是rt-tests 下使用最广泛的测试工具,一般主要用来测试使用内核的延迟,从而判断内核的实时性.
参见
cyclictest 简介以及安装
cyclictest 的使用
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可, 转载请注明出处, 谢谢.
相关文章推荐
- 六款优秀的 Linux 基准测试工具
- 六款优秀的 Linux 基准测试工具
- Linux 上常见的 IO 基准测试工具比较dd/orion/iozone/bonnie++
- Linux磁盘或者其他类型服务器压力测试的几款工具简介
- linux 性能测试之基准测试工具
- Linux磁盘或者其他类型服务器压力测试的几款工具简介
- Linux 上常见的 IO 基准测试工具比较
- Linux 上常见的 IO 基准测试工具比较
- Linux 上常见的 IO 基准测试工具比较dd/orion/iozone/bonnie++
- 简述服务器测试中的性能基准测试的工具
- Linux - 两个Linux文件系统性能测试工具
- 【硬件】推荐软件『软硬件的基准测试工具』
- Linux 测试工具
- linux下网站压力测试工具webbench
- Linux下压力测试工具推荐:WebBench
- 几款开放源代码的软件测试工具介绍
- 服务器性能基准测试工具
- 几款开放源代码的软件测试工具介绍
- linux环境下 C++性能测试工具 gprof + kprof + gprof2dot
- Siege 一个linux下的压力测试工具