我使用freebsd11但iops非常差('fio'工具)

时间:2016-12-18 19:46:08

标签: freebsd disk ssd

我使用'fio'磁盘工具测试速度。磁盘是intel ssd,trim和4k对齐已启用。

硬件是戴尔R610。

磁盘控制器是ahci和lsi 9211-8i,驱动器是p20,IT型号,sysctl是默认的。 Freebsd文件系统是ZFS或UFS,CentOS是XFS。

如果安装centos7并使用'fio'测试,也没问题。

命令是:

fio -filename=/mnt/test.fio_test_file -direct=1 iodepth 1 -thread -rw=randread(or randrw/randwrite) -ioengine=psync -bs=4k -size 1G -numjobs=1(or 64) -runtime=30 -group_reporting -name=pleasehelpme

freebsd的速度是: [59172KB / 0KB / 0KB / s] [14.8K / 0/0 iops]

centos7速度是: [248.5MB / 0KB / 0KB / s] [63.5K / 0/0 iops]

接近5倍的速度!

测试randrw randwrite,问题仍然存在。

但是没有rand,只是读或写非常好,比centos更快..............

我没有在freebsd11上尝试过其他工具,可能是fio有问题吗?但我不确定......

为什么?以及如何解决?

2016-12-6重试

我看了https://github.com/axboe/fio/

我认为是fio问题,但测试postgresql(两个系统配置相同)tps不好,两个系统tps差异很大。

看起来freebsd确实表现不佳,而不是fio问题。

可能是配置问题?我不知道......

2017年1月8日 我放弃freebsd11,使用centos7。

freebsd11性能应该不错,但事实并非如此,可能是我的配置错误,但我无法修复此磁盘iops问题。所以...不得不放弃。

QAQ .....如果你能解决这个问题,请告诉我。 非常感谢你。

1 个答案:

答案 0 :(得分:1)

在某些情况下,根据硬件FreeBSD可能需要进行一些调整,有时可能是控制器(DELL PERC)的问题,或者在其他情况下,简单的内核标志可能会有所帮助。

来自https://wiki.freebsd.org/BenchmarkAdvice

并行读/写测试

如果你进行FS /磁盘I / O测试,其中写入和读取是交错/并行的,你需要知道FreeBSD优先考虑写入读取。

  

检查vfs.hidirtybuffers,通常会降低它,以便更早地强制删除脏页,从而减少fsync必须处理的数量。

对ZFS进行基准测试

如果您想对ZFS进行基准测试,请注意,只有您愿意花钱才会发光。在一个或两个磁盘上使用ZFS不会提高性能(与例如UFS相比),但它会提高数据的安全性(您知道数据何时因辐射或数据操作硬盘错误而受损)。为了使它发光,您需要添加至少大量的RAM,或者一个用于L2ARC高速缓存的读取优化的SSD用于读取性能(SSD的数量取决于工作集的大小)或两个镜像(用于数据安全的情况下) SSD受损)针对ZIL的写优化SSD,用于同步(DBs / NFS / ...)写入性能。

尝试使用diskinfo

diskinfo -t /dev/ada0

-t选项会触发磁盘搜索和传输性能的简单且相当天真的基准。

对于ZFS:https://wiki.freebsd.org/ZFSTuningGuide