WUH721816AL硬盘fio测试不达标问题

【问题描述】

  WUH721816AL(西数16T SATA盘)硬盘,在关闭写缓存的情况下,使用fio测试256K 1m顺序写时存在性能低的问题(实测数据约80mb/s在客户标准测试满足200MB/s通过)

原因分析

  机械盘对单个fio下发多job测试性能没有offset_increment=int参数时不合理,因为单个fio下发多个job任务顺序写时,两个任务都是从初始地址开始写,这样会出现覆盖写导致实际写入速度降低;同时固件也会根据缓存里的数据情况进行优化,比如放弃之前的写入命令,直接执行最后一次,这样可以提高效率,但大块数据会导致缓存里的写入命令比较少,就会可能发生重复写入,降低了效率,从而出现当数据块越大,性能出现跌落的情况,小数据块也会收到影响,只是影响不大,并且这和各家的固件算法不同;(cache是disable的情况盘会转让PWC模式,会有2M大小的缓存,保证突然断电数据丢失)

  测试数据:

  a、不带offset_increment=int参数测试 

bs大小

西数16T顺序写性能MB/s

64k

255

128k

260

256k

92

512k

95

1024k

89

        b、带offset_increment=100GB参数测试

bs大小

西数16T顺序写性能MB/s

256k

204

512k

260

1024k

260

 

解决方案

  合理的使用单个fio测试多job的顺序写性能,要保证这些job不能同时写入相同的地址,所以需要加上-offset_increment=100GB参数,使得每个job写的地址不同,这样实际的性能就是真实性能

posted @ 2024-10-21 16:36  杨灏  阅读(45)  评论(0编辑  收藏  举报