我有双Intel E5-2620 v3 @ 2.40GHz ,64 GB内存, LSI 3008 HBA ,8x 1.6 TB Intel S3510固态硬盘 。 我一直在使用fio以不同的configuration进行基准testing,并且得到了一些有趣的结果。 对每个原始磁盘进行基准testing,我看到每个设备有〜450 MB / s的随机写入。 在一个RAID0(没有奇偶校验的条带)中,我看到〜3500 MB / s的随机写入 – 基本上是450 * 8个磁盘。
不过,当我尝试RAID 5时,性能完全被淹没了。 我意识到raid5应该比raid0差得多,但是使用相同testing的RAID5性能大约是50MB / s 。 之前我曾经使用过RAID 5,虽然性能从未如此好,但我从来没有看到99%的惩罚。 我正在运行的fiotesting有600个线程在512k块中写入随机数据。 设备上的文件系统是所有这些testing的xfs。
将/sys/block/md0/md/stripe_cache_size为32768(可能的最大值)将整体吞吐量增加到/sys/block/md0/md/stripe_cache_size MB / s ,这导致我认为问题是缺less类似于硬件RAID中的写回caching控制器。 但是我想知道是否有什么可以改善mdadm raid 5的性能。 任何想法可能会导致这种情况,或如何提高突袭5性能?
有趣的是,我还尝试了一个16磁盘的RAID-10(相同的磁盘加上第二个LSI HBA),性能是〜2400 MB / s – 从RAID 0减less33%。考虑到RAID10的工作原理,我预计性能与RAID 0几乎相同。
对于任何有兴趣的人来说,这里是fioconfiguration文件:
[global] rw=randwrite direct=1 numjobs=600 group_reporting bs=512k runtime=120 ramp_time=5 size=10G [raid] new_group directory=/raid/