[转帖]Linux文件系统的几个性能测试软件小结
https://developer.aliyun.com/article/297631#:~:text=Linux%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%87%A0%E4%B8%AA%E6%80%A7%E8%83%BD%E6%B5%8B%E8%AF%95%E8%BD%AF%E4%BB%B6%E5%B0%8F%E7%BB%93%201%201.Iozone%20iozone%E6%98%AF%E4%B8%80%E4%B8%AA%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84benchmark%E5%B7%A5%E5%85%B7%EF%BC%8C%E5%8F%AF%E4%BB%A5%E6%B5%8B%E8%AF%95%E4%B8%8D%E5%90%8C%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E4%B8%AD%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E8%AF%BB%E5%86%99%E6%80%A7%E8%83%BD%E3%80%82%20%E5%8F%AF%E4%BB%A5%E6%B5%8B%E8%AF%95%20Read%2C%20write%2C%20re-read%2C,...%203%203.Simul%20Simul%E6%98%AF%E4%B8%80%E4%B8%AA%E5%B9%B6%E8%A1%8C%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E6%B5%8B%E8%AF%95%E5%B7%A5%E5%85%B7%EF%BC%8C%E5%AE%83%E5%8F%AF%E4%BB%A5%E5%90%8C%E6%97%B6%E6%A8%A1%E6%8B%9F%E5%A4%9A%E4%B8%AA%E7%BB%93%E7%82%B9%E5%92%8C%E8%BF%9B%E7%A8%8B%E6%9D%A5%E6%89%A7%E8%A1%8C%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E6%93%8D%E4%BD%9C%E6%9D%A5%E6%B5%8B%E8%AF%95%E5%B9%B6%E8%A1%8C%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%87%86%E7%A1%AE%E6%80%A7%E5%92%8C%E4%B8%80%E8%87%B4%E6%80%A7%E3%80%82%20%E4%B8%BB%E8%A6%81%E5%8F%82%E6%95%B0%E5%90%AB%E4%B9%89%EF%BC%9A%20...%204%204.Fdtree

曾经测试Linux系统下的分布式集群系统的性能,使用了一些测试软件,公司让我给部门同事做一次基础培训,于是翻看以前所写的记录资料挑选了其中几个,所记之处并不完全,只记录使用的功能。
1.Iozone
iozone是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统的读写性能。
可以测试 Read, write, re-read, re-write, readbackwards, read strided, fread, fwrite, random read, pread, mmap, aio_read,aio_write 等等不同的模式下的硬盘的性能。
测试参数: -i # 用来指定测试内容,我主要用到以下两种:
0=write/rewrite
1=read/re-read
例如测试写:-i 0,测试读和写:-i 0 -i 1。
-R 产生execl格式的输出日志
-b 将产生二进制的execl的日志文件名
-s 测试的文件大小
-r 文件块大小
-a 在希望的文件系统上测试,不过只有-a的话会进行全面测试,要花费很长时间,最好用-i指定测试范围。

上图显示了一个iozone的测试ext3本地文件系统结果的一部分,测试文件块的大小为1m,测试文件的大小4G,测试包括文件的关闭时间和flush时间,测试内容包含写/重写、读/重读,测试时产生的二进制日志会保存在/home目录下的test.xls中。
通常情况下,测试的文件大小要求至少是系统cache的两倍以上,这样,测试的结果才是真是可信的。如果小于cache的两倍,文件的读写测试读写的将是cache的速度,测试的结果大打折扣。
2.Mdtest
Mdtest是一个测试文件系统元数据性能的工具。
我们经常用到的一些参数的含义:
-d 测试运行的目录
-i 测试循环的次数
-n 每个进程将要创建/统计/删除的目录和文件数目
-w 文件创建以后写入多少bytes
-p 循环前的时间延迟
-D 只针对目录进行测试
-F 只针对文件进行测试

上图是一个mdtest的测试结果,测试参数为:测试运行的目录为/mnt/aaa,创建/统计/删除的目录和文件数为30000,反复执行3次。
从上图可看到目录创建每秒能够完成的操作数最大为7016.495次,每秒能够完成的操作数平均为6691.628次;文件创建每秒能够完成的操作数最大为63521.371次,每秒能够完成的操作数平均为62325.578次。(因测试为本地文件系统,故数值比较大)
3.Simul
Simul是一个并行文件系统的测试工具,它可以同时模拟多个结点和进程来执行文件系统的操作来测试并行文件系统的准确性和一致性。
主要参数含义:
-d 测试将要运行的目录
-f 开始测试时的测试编号(缺省为0)
-l 最后测试时的测试编号(缺省为39)
-i 测试过程中包含的测试编号
-e 测试过程中不包括的测试编号
-n每次测试重复的次数
-N 所有的测试重复的次数

由上图可知,测试目录为/mnt/aaa/,测试执行0到39的所有测试,测试结果为All test passed!
4.Fdtree
Fdtree是一个用来测试文件系统元数据性能的工具,同时也可以用来进行压力测试。
参数含义:
-C 只创建目录树
-D 打开调试
-R 只移除目录树
-l 创建目录的递归等级,默认为4
-d 每个等级所要创建的目录个数
-f 每个目录下所要创建的文件个数
-o 开始测试时的路径名
-s 文件大小(是以block计算的,linux下block大小为4096Bytes),默认为10
fdtree.bash –d 1 –l 2 –f 10000 –s10000
这个例子是一个文件压力的测试,创造的目录结构的等级为2,每个等级下创建1个目录,每个目录下文件的个数为10K,每个文件的大小为10000*4096Bytes=40.96MB,总的数据大小为2*10000*40.96MB=819.2GB。
fdtree.bash -d 10000 -l 100
这个例子是一个目录压力的测试,创造的目录结构的等级为100,每个等级下目录的个数为10K。第一等级下的总目录个数为10K,第二等级下的总目录总个数为10K*10K,第三等级下的总目录个数为10K*10K*10K,依次类推!

上图显示了一个Fdtree的测试结果,目录等级为5,每个等级下创建目录的个数为5,每个目录下文件的个数为5,文件大小为40KB。
[转帖]Linux文件系统的几个性能测试软件小结的更多相关文章
- Linux文件系统的几个性能测试软件小结
曾经测试Linux系统下的分布式集群系统的性能,使用了一些测试软件,公司让我给部门同事做一次基础培训,于是翻看以前所写的记录资料挑选了其中几个,所记之处并不完全,只记录使用的功能. 1.Iozone ...
- [转帖]Linux文件系统详解
Linux文件系统详解 https://www.cnblogs.com/alantu2018/p/8461749.html 贼复杂.. 从操作系统的角度详解Linux文件系统层次.文件系统分类.文件系 ...
- Windows与Linux文件系统互访的几种方法
首先,我们知道基于文件的几种服务:ftp,sftp,这两种服务都是文件传输服务,偏重于网络传输,并不是实时互访.通常,我们需要在远程和本地 同时操作同一个目录,如:在Windows下使用各种强大的ID ...
- Linux文件系统学习(一)之相关概念⭐⭐⭐
“一切皆是文件”是 Unix/Linux 的基本哲学之一.不仅普通的文件,目录.字符设备.块设备.套接字等在 Unix/Linux 中都是以文件被对待:它们虽然类型不同,但是对其提供的却是同一套操作界 ...
- [转帖]linux操作系统测试工具
linux操作系统测试工具 http://cfdtesting.com/879156.html 作者: minions_222 来源: CFDTesting.com采编 发布于: ...
- linux文件系统体系结构 和 虚拟文件系统(VFS)
图 1. Linux 文件系统组件的体系结构 用户空间包含一些应用程序(例如,文件系统的使用者)和 GNU C 库(glibc),它们为文件系统调用(打开.读取.写和关闭)提供用户接口.系统调用接口的 ...
- Linux文件系统
今天学习了Linux文件系统,现在来做个小总结. 首先Linux中一切都是文件,下面这个清单是Linux系统的顶层目录结构. 清单 1. Linux 系统的顶层目录结构 / 根目录 ├── bin 存 ...
- linux 文件系统简介
linux文件系统简介 文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基 ...
- Linux文件系统层次结构标准
该标准的目的是定义Linux文件系统的标准路径,使得开发者和用户可以在合理的位置找到需要的东西. Linux的文件布局的大体想法是将文件和目录分为如下3组: 对运行Linux的某一特定系统唯一的文件和 ...
- linux文件系统节点详解
linux文件系统有两层结构,逻辑结构和物理结构.也就是inode和block. 每个文件都有一个inode, 记录文件属性:权限,时间还有最重要的block号码. block是实际存放文件内容的地方 ...
随机推荐
- Quartz.Net系列(八):Trigger之CalendarIntervalScheduleBuilder详解
所有方法图 CalendarIntervalScheduleBuilder方法 在SimpleScheduleBuilder基础上实现了日.周.月.年 WithInterval:指定要生成触发器的时间 ...
- 关于three.js中的矩阵更新
目录 1. 概述 2. 详解 1. 概述 使用如下代码绘制一个面: 'use strict'; function init() { //console.log("Using Three.js ...
- DevOps|我们需要什么样的产研项目管理工具
上一篇文章<DevOps|产研运协作工具链上的皇冠-项目管理工具>主要讲了项目管理工具对软件研发的重要性,本篇文章主要想讲清楚我们需要什么样的项目管理工具,项目管理工具必须具备的功能有哪些 ...
- 物联网SIM卡和SIM卡真的不是一回事
办卡吗,兄弟? 物联网卡?相信大家第一反应都是一愣.大家听过银行卡.电话SIM卡.会员卡-等等,很多人可能都是第一次听说物联网卡.那它到底是个什么东东?它能干什么呢?今天就带大家一探究竟. 那在物联网 ...
- MindSpore实践:对篮球运动员目标的检测
摘要:本文讲述的是MindSpore对篮球运动员目标的检测应用,通过AI技术辅助对篮球赛场进行分析. 本文分享自华为云社区<MindSpore大V博文系列:AI对篮球运动员目标的检测>,原 ...
- 小熊派:用OpenHarmory3.0点亮LED
摘要:作为一个代表性的完整的开发,本案例可以分成3大部分:代码文件的规划,LED灯的驱动开发,点亮LED的业务开发. 本文分享自华为云社区<在小熊派Micro上用OpenHarmory3.0点亮 ...
- ImportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.8' not found
[root@localhost PaddleOCR]# strings /lib64/libstdc++.so.6 | grep 'CXXABI' CXXABI_1.3 CXXABI_1.3.1 CX ...
- Mysql--编译安装5.7版本
1 安装环境 1)清除以往mysql残留痕迹(新机不用) yum erase mariadb mariadb-server mariadb-libs mariadb-devel -y userdel ...
- Codeforce 318A - Even Odds(数学水题)
Being a nonconformist, Volodya is displeased with the current state of things, particularly with the ...
- <vue 组件 1、组件化基本使用>
代码结构 组件就是将复杂的功能拆分成简单的块,拆分后的块可以被多处使用. 组件的使用分成三个步骤: 1.创建组件构造器 Vue.extend() 2.注册组件 Vu ...