Linux文件系统的几个性能测试软件小结

曾经测试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。

时间: 2024-10-07 04:53:33

Linux文件系统的几个性能测试软件小结的相关文章

Windows与Linux文件系统互访的几种方法

首先,我们知道基于文件的几种服务:ftp,sftp,这两种服务都是文件传输服务,偏重于网络传输,并不是实时互访.通常,我们需要在远程和本地同时操作同一个目录,如:在Windows下使用各种强大的IDE编辑代码,在Linux下编译和运行该代码.如果在Windows下编写好代码再拷贝到Linux下编译,这样修改时很费事,直接在Linux下修改,还要同步回Windows,相当费事.当然有人会说,所有的工作都在Linux下搞定,VI.Linux命令行足够强大,没有需要使用Windows系统的理由,本文的

Linux 文件系统权限小结-基本权限-粘滞位-ACL

突然有人问道:drwxrwxrwx+后面的+号是干什么的,挺熟悉又想不起来,百度下后得到结果,最终总结一下Linux系统下关于文件权限的知识,在此记录下. 1.正常情况下,Linux文件系统中的文件权限为: drwxr-xr-x 2 root root 4096 5月  24 15:12 directory -rw-r--r-- 1 root root    0 5月  24 15:12 file.txt 十位第一位为文件属性,d为目录,-为普通文件,c表示为字符设备文件,b表示为块设备文件,s

Linux文件系统应用---系统数据备份和迁移(用户角度)

1   前言 首先承诺:对于从Windows系统迁移过来的用户,困扰大家的  “Linux系统下是否可以把系统文件和用户文件分开到C盘和D盘中” 的问题也可以得到完满解决. 之前的文章对Linux的文件系统有过粗略的介绍,但是了解文件系统结构后,有什么用途呢?在本章节将围绕 "基于用户角度的Linux下的数据备份和迁移" 的场景,对Linux文件系统相关知识进行实地应用,产生生产力 . 在了解Linux文件系统之后,就可以 艺高人胆大 玩转Linux的文件目录了. 本文案例 --- &

理解Linux文件系统之inode

很少转发别人的文章,但是这篇写的太好了. 理解inode 作者: 阮一峰 inode是一个重要概念,是理解Unix/Linux文件系统和硬盘储存的基础. 我觉得,理解inode,不仅有助于提高系统操作水平,还有助于体会Unix设计哲学,即如何把底层的复杂性抽象成一个简单概念,从而大大简化用户接口. 下面就是我的inode学习笔记,尽量保持简单. =================================== 理解inode 作者:阮一峰 一.inode是什么? 理解inode,要从文件储

基于topeer 4412开发板 无界面linux文件系统的制作

Exynos-4412不仅可以运行Android,还可以运行简单的linux最小文件系统(不带显示界面的linux系统),下面我们来讲解一下这种文件系统的制作. 制作文件系统我们需要使用到Busybox工具.BusyBox 是一个集成了一百多个最常用linux命令和工具的软件.BusyBox 包含了一些简单的工具,例如ls.cat和echo等等,还包含了一些更大.更复杂的工具,例grep.find.mount以及telnet.有些人将 BusyBox 称为 Linux 工具里的瑞士军刀.简单的说

linux 文件系统的管理 (硬盘) 工作原理

一.系统在初始化时如何识别硬盘 1.系统初始时根据MBR的信息来识别硬盘,其中包括了一些执行文件就来载入系统,这些执行文件就是MBR里前面446bytes里的boot loader 程式,而后面的16X4的空间就是存储分区表信息的位置:如下图 2.在分区表中,主要储存了以下信息:(1)分区号,常见的分区号有以下几种:其它编号可以使用fdisk指令,再执行 l (小写L) 查看 0x5 (or 0xf) 扩展分区 0x82 Linux swap 0x83 Linux 0x8e Linux LVM

分析Linux 文件系统访问控制列表

1.What is FACL? FACL,文件系统访问控制列表,即Filesystem Access Control List.根据以前对LINUX权限模型的了解,大概如下: 假设有这么一个场景: 用户TOM创建的文件file,希望用户LUCY可以访问和编辑. 分析: 第一,可否TOM用户临时改变file的owner为LUCY,这样就可以达到目的. 显然,这并不可行.因为普通用户根本就没有chown的权限. 第二,可否设置LUCY在file的属组并属组权限有rw或者file的other权限有rw

linux文件系统简介

文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基本原理.文件存储结构.软链接硬链接.和常见目录的介绍.相信有了这些知识对于深入的学习linux会有一定的帮助.文章例子主要是基于ubuntu发行版. 如有不对之处请大家多多指出. 1.Linux磁盘分区和目录 Linux发行版本之间的差别很少,差别主要表现在系统管理的特色工具以及软件包管理方式的不同.目录结构基本上都是一样的.

Linux文件系统简介----转载

原文地址:Linux文件系统 文件系统是linux的一个十分基础的知识,同时也是学习linux的必备知识. 本文将站在一个较高的视图来了解linux的文件系统,主要包括了linux磁盘分区和目录.挂载基本原理.文件存储结构.软链接硬链接.和常见目录的介绍.相信有了这些知识对于深入的学习linux会有一定的帮助.文章例子主要是基于ubuntu发行版. 如有不对之处请大家多多指出. 1.Linux磁盘分区和目录 Linux发行版本之间的差别很少,差别主要表现在系统管理的特色工具以及软件包管理方式的不