Sysbench使用之二fileio

简介: 源码编译的安装步骤如下

源码安装

安装方法参见: https://github.com/akopytov/sysbench

源码编译的安装步骤如下:


yum -y install make automake libtool pkgconfig libaio-devel  openssl-devel
wget https://github.com/akopytov/sysbench/archive/master.zip
unzip master.zip 
cd sysbench-master/
./autogen.sh 
./configure  --without-mysql
 make -j
 make install


没有安装mysql,所以要用–without-mysql。


fileio 测试

# sysbench fileio help
sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)
fileio options:
  --file-num=N                  number of files to create [128]
  --file-block-size=N           block size to use in all IO operations [16384]
  --file-total-size=SIZE        total size of files to create [2G]
  --file-test-mode=STRING       test mode {seqwr, seqrewr, seqrd, rndrd, rndwr, rndrw}
  --file-io-mode=STRING         file operations mode {sync,async,mmap} [sync]
  --file-async-backlog=N        number of asynchronous operatons to queue per thread [128]
  --file-extra-flags=[LIST,...] list of additional flags to use to open files {sync,dsync,direct} []
  --file-fsync-freq=N           do fsync() after this number of requests (0 - don't use fsync()) [100]
  --file-fsync-all[=on|off]     do fsync() after each write operation [off]
  --file-fsync-end[=on|off]     do fsync() at the end of test [on]
  --file-fsync-mode=STRING      which method to use for synchronization {fsync, fdatasync} [fsync]
  --file-merged-requests=N      merge at most this number of IO requests if possible (0 - don't merge) [0]
  --file-rw-ratio=N             reads/writes ratio for combined test [1.5]


# sysbench fileio prepare
sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)
128 files, 16384Kb each, 2048Mb total
Creating files for the test...
...
Creating file test_file.127
2147483648 bytes written in 4.26 seconds (481.08 MiB/sec).


飞腾机器测试顺序写大约400M/S:


# sysbench fileio  --file-test-mode=seqwr run
sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)
Running the test with following options:
Number of threads: 1
Initializing random number generator from current time
Extra file open flags: (none)
128 files, 16MiB each
2GiB total file size
Block size 16KiB
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing sequential write (creation) test
Initializing worker threads...
Threads started!
Throughput:
         read:  IOPS=0.00 0.00 MiB/s (0.00 MB/s)
         write: IOPS=25040.09 391.25 MiB/s (410.26 MB/s)
         fsync: IOPS=32061.56
Latency (ms):
         min:                                  0.00
         avg:                                  0.02
         max:                                 55.21
         95th percentile:                      0.05
         sum:                               9695.04
[root@localhost infokist]#

这是一个由11个sata盘组成的RAID 6的磁盘整列。


# sysbench fileio  --file-test-mode=rndrd run
sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)
Running the test with following options:
Number of threads: 1
Initializing random number generator from current time
Extra file open flags: (none)
128 files, 16MiB each
2GiB total file size
Block size 16KiB
Number of IO requests: 0
Read/Write ratio for combined random IO test: 1.50
Periodic FSYNC enabled, calling fsync() each 100 requests.
Calling fsync() at the end of test, Enabled.
Using synchronous I/O mode
Doing random read test
Initializing worker threads...
Threads started!
Throughput:
         read:  IOPS=19340.10 302.19 MiB/s (316.87 MB/s)
         write: IOPS=0.00 0.00 MiB/s (0.00 MB/s)
         fsync: IOPS=0.00
Latency (ms):
         min:                                  0.01
         avg:                                  0.05
         max:                                  0.25
         95th percentile:                      0.07
         sum:                               9828.43



只读的iops将近2万

测试完成要删除用于测试的文件

# sysbench fileio  cleanup
sysbench 1.1.0 (using bundled LuaJIT 2.1.0-beta3)
Removing test files...


其他测试

# sysbench threads run

# sysbench memory run

# sysbench cpu run

# sysbench mutex run

相关文章
|
3月前
|
关系型数据库 MySQL 测试技术
【赵渝强老师】MySQL的基准测试与sysbench
本文介绍了MySQL数据库的基准测试及其重要性,并详细讲解了如何使用sysbench工具进行测试。内容涵盖sysbench的安装、基本使用方法,以及具体测试MySQL数据库的步骤,包括创建测试数据库、准备测试数据、执行测试和清理测试数据。通过这些步骤,可以帮助读者掌握如何有效地评估MySQL数据库的性能。
174 5
|
9月前
|
SQL 缓存 关系型数据库
Mysql调优你不知道这几点,就太可惜了
Mysql调优你不知道这几点,就太可惜了
133 0
|
存储 关系型数据库 测试技术
|
测试技术
loadrunner入门教程(19) --事务
loadrunner如何添加事务
200 0
loadrunner入门教程(19) --事务
|
测试技术 OLTP
sysbench的压测工具的安装与使用
sysbench的压测工具的安装与使用
220 0
|
关系型数据库 MySQL 测试技术
|
测试技术
从sysbench中学习Lua
我做事喜欢结果导向,喜欢快速迭代,能10分钟搞定,绝对不愿意花15分钟。但是技术行当,还是得耐得住寂寞,因为很多事情10分钟搞不定,可能100分钟,1000分钟也搞不定,但是不代表我们真搞不定,需要花一些时间,花一些额外的代价来补课。
1957 0
|
固态存储 关系型数据库 测试技术