我使用'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 .....如果你能解决这个问题,请告诉我。 非常感谢你。
答案 0 :(得分:1)
在某些情况下,根据硬件FreeBSD可能需要进行一些调整,有时可能是控制器(DELL PERC)的问题,或者在其他情况下,简单的内核标志可能会有所帮助。
来自https://wiki.freebsd.org/BenchmarkAdvice
如果你进行FS /磁盘I / O测试,其中写入和读取是交错/并行的,你需要知道FreeBSD优先考虑写入读取。
检查
vfs.hidirtybuffers
,通常会降低它,以便更早地强制删除脏页,从而减少fsync必须处理的数量。
如果您想对ZFS进行基准测试,请注意,只有您愿意花钱才会发光。在一个或两个磁盘上使用ZFS不会提高性能(与例如UFS相比),但它会提高数据的安全性(您知道数据何时因辐射或数据操作硬盘错误而受损)。为了使它发光,您需要添加至少大量的RAM,或者一个用于L2ARC高速缓存的读取优化的SSD用于读取性能(SSD的数量取决于工作集的大小)或两个镜像(用于数据安全的情况下) SSD受损)针对ZIL的写优化SSD,用于同步(DBs / NFS / ...)写入性能。
尝试使用diskinfo
diskinfo -t /dev/ada0
-t
选项会触发磁盘搜索和传输性能的简单且相当天真的基准。