当前位置:网站首页>Detailed summary of FIO test hard disk performance parameters and examples (with source code)
Detailed summary of FIO test hard disk performance parameters and examples (with source code)
2022-07-05 08:15:00 【Happy learning】
Catalog
One 、 brief introduction
This paper mainly introduces FIO Specific parameters 、 Download the source code and use examples FIO Hard disk performance test ,FIO yes Linux The next open source IOPS Testing tools , It is mainly used for stress testing and performance verification of disks .
It can generate many threads or processes to execute user specific types of I/O operation , By writing job files ( Be similar to k8s Of yaml) Or direct the command to execute the test action , It is equivalent to a multithreaded io Generation tool , Used to generate multiple IO Mode to test the performance of hard disk devices ( In most cases, it is used to test the performance of bare disk ).
Two 、 Source code download and parameter analysis
2.1 Source code download method
1、git Direct download
https://github.com/axboe/fio.git
[[email protected] /]# wget https://github.com/axboe/fio/archive/refs/tags/fio-3.10.zip
[[email protected] /]# cd /root/fio-fio-3.10
[[email protected] /]# ./configure
[[email protected] /]# make && make install
2、 Some system sources already have fio package
[[email protected] /]# apt-get install fio -y // Direct download
2.2 Argument parsing
| Parameters | analysis |
|---|---|
| -name | The name used to output information , In the use of the above command line , Indicates a new job The beginning of , Default is job name |
| -filename | Test file name , Usually choose the disk that needs to be tested data Catalog |
| -group_reporting | Gather all the information , Not every one of them job All show specific results |
| -iodepth | The queue depth of this test |
| -ioengine | The load generated by the engine , Definition job Initiate... To the file io The way .Fio There are many engines , Specifically, you can search online , The commonly used engine is libaio and |
| -volume and -brick | These two are used to test the mount point , Other scenes don't need . |
| -nrfiles | Number of files generated per process |
| -rw | How to read and write , Sequential reading , Sequential writing , random block read , Write at random , Mix reading and writing |
| -bs | Block size , General tests 4k, 8k, 64k, 128k, 1M |
| -size | Size of test file |
| -threads | fio By default fork() establish job, If this option is set ,fio Will use pthread_create To create threads |
| -numjobs | Number of threads created |
| -direct | The test process bypasses the machine's own buffer or cache, amount to o_direct Other parameters for relatively advanced point usage , such as :-runtime Test duration |
| -bssplit=4k/40:64k/30:1M/30 | Mixed block size ,4k:64k:1M = 4:3:3 |
| bsrange=512-2048 | The range of block sizes , Same as bs Parameters |
| -rw=randrw, -rwmixread=70 | Mix reading and writing 7:3 |
FIO Precautions before test :
1、 Test environment configuration
yum -y install libaio-devel // install libaio engine , Otherwise, execute fio Will be submitted to the “fio: engine libaio not loadable”, Must be in fio Install before installation , Otherwise, you have to compile and install again fio
2、 When writing the test, pay attention to whether to operate the bare disk or the disk with data , Because the write operation will format the existing data on the hard disk , If you want to test the partition 、 And create a file system , And perform performance test on the disk that has written data , Please note that filename Select the specified file , To avoid overwriting the file system and original data .
2.3 Test case
Read performance test
fio -filename=/dev/sda -direct=1 -iodepth 1 -thread -rw=read -ioengine=psync -bs=16k -size=20G -numjobs=30 -runtime=1000 -group_reporting -name=yaoxu-sda
// test sda Bare disk performance ,-direct=1 Bypassing the machine cache, The queue depth is 1, Block size is 16k, Test the file The size is 20G, establish 30 Threads , The test duration is 1000s
test result :
Write performance test
fio -filename=/dev/sda -direct=1 -iodepth 256 -thread=1 -rw=write -ioengine=libaio -bs=128k -size=5G -numjobs=4 -runtime=60 -group_reporting -name=eric-test
test result :
3、 ... and 、 Other related links
3.1 Linux Next stream Memory bandwidth test summary with source code
3.2 Linux Lower distinguishing disk (HDD) And SSDs (SSD)
边栏推荐
- Semiconductor devices (III) FET
- Halcon's practice based on shape template matching [2]
- Record the opening ceremony of Beijing Winter Olympics with display equipment
- The firmware of the connected j-link does not support the following memory access
- 【云原生 | 从零开始学Kubernetes】三、Kubernetes集群管理工具kubectl
- Zero length array in GNU C
- C WinForm [display real-time time in the status bar] - practical exercise 1
- List of linked lists
- Soem EtherCAT source code analysis attachment 1 (establishment of communication operation environment)
- Classic application of MOS transistor circuit design (1) -iic bidirectional level shift
猜你喜欢

Soem EtherCAT source code analysis attachment 1 (establishment of communication operation environment)

Altium designer learning (I)

Network port usage

1-stm32 operation environment construction

Relationship between line voltage and phase voltage, line current and phase current

Factors affecting the quality of slip rings in production
![Measurement fitting based on Halcon learning [II] meaure_ pin. Hdev routine](/img/da/8c70699d2cd3ec5b36ec716b8f6bd1.jpg)
Measurement fitting based on Halcon learning [II] meaure_ pin. Hdev routine

Consul安装

VESC Benjamin test motor parameters

UEFI development learning 6 - creation of protocol
随机推荐
General makefile (I) single C language compilation template
Reasons for rapid wear of conductive slip rings
Adaptive filter
Imx6ull bare metal development learning 1-assembly lit LED
IEEE access personal contribution experience record
动力电池UL2580测试项目包括哪些
Semiconductor devices (I) PN junction
Verilog -- state machine coding method
Sizeof (function name) =?
Summary -st2.0 Hall angle estimation
Several important parameters of LDO circuit design and type selection
Shell script realizes the reading of serial port and the parsing of message
Compilation warning solution sorting in Quartus II
Record the visual shock of the Winter Olympics and the introduction of the screen 2
Let's briefly talk about the chips commonly used in mobile phones - OVP chips
如何进行导电滑环选型
[tutorial 15 of trio basic from introduction to proficiency] trio free serial communication
Improve lighting C program
UEFI development learning series
Imx6ull bare metal development learning 2- use C language to light LED indicator