react 前端框架如何驱动企业数字化转型与创新发展
839
2022-10-31
fsperf是围绕fio构建的文件系统性能测试框架
fsperf
fsperf is a performance testing framework built around fio. The goal is to provide a simple to run framework for file system developers to be able to check their patches and make sure they do not regress in performance. Adding new tests is as easy as adding a .fio file to the tests directory.
Configuration
In order to configure the suite you need to create a local.cfg file in the base of the fsperf directory. This file takes the format normal INI files. The options that can be specified are
mkfs - if specified this will be run between every test. This is the full mkfs command needed for your test environment.mount - the command to mount the fs. If specified the fs will be unmounted between each test.directory - the directory to run the fio jobs in. This must be specified regardless of wether you mount or mkfs in between runs.
The section that gets run if you don't specify an option is default. So a sample local.cfg would look like this
[default]mkfs=mkfs.btrfs -f /dev/nvme0n1mount=mount -o noatime /dev/nvme0n1 /mnt/btrfs-testdirectory=/mnt/btrfs-test
You can specify multiple configurations per file, and switch between them with the -c option for fsperf.
Setup
The only thing that needs to be done before hand is to create your local.cfg and run the command
./setup
In the main directory of fsperf. This will initialize the sqlite database that will contain the results of the fio runs.
How to run
Once you've setup your local.cfg you simply run
./fsperf
and wait for the suite to finish. The complete data set that fio produces will be stored in the database, but fsperf only compares iops, io_kbytes, and bw for reads, writes and trim operations. The intent is to cover the basics and have as few false positives as possible. Future work will include the ability to visualize more data to be able to spot trends. If desired you can run
./fsperf --latency
To include comparisons of min and max latency. However these can be pretty jittery between runs and may be less useful.
Understanding the comparisons
We only compare the last run of the given test with the given configuration. So if you have multiple sections in your configuration file, such as the following
[default]directory=/mnt/btrfs-test[xfs]directory=/mnt/xfs-tests
Only tests in the same configuration will be compared against each other. Future work will include the ability to compare with other configurations, but currently you can just change your local.cfg if you wish to compare runs of different configurations.
Disabling tests
Sometimes you may need to disable a test, so simply add the test name to it's own line in the disabled-tests file in the root of the project directory.
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~