基准测试:性能损失最大不会超过25%
笔者在网友的帮助下,收集了相关数据,并对其加以考证得出。无论大小文件传输还是删除模式下,未对齐的扇区会对整体性能造成明显的损失。
在Linux下, 我们会使用若干文件系统对已对齐和未对齐的分区进行统一4K标准磁盘进行驱动,受测试的文件分别为:ext3fs、ext4fs、ReiserFS、JFS、XFS 和 Btrfs。在脚本设置成功后执行一些列的磁盘I/O操作,包括创建、删除、复制、读取操作。每次将重复6次文件系统运行操作,对对齐和未对齐的分区分别进行3次。用平均未对齐时间除以平均对齐时间所得的值来确定所应用的不合理对齐对性能的影响程度。大于 1.00 的值表示不合理对齐产生一些性能损失。
使用未对齐分区的读性能损失
从图表中我们可以看到,许多测试产生适度的损失。针对文件系统创建的值介于0.96(对于XFS)到7.94(对于ReiserFS)之间,测试的平均值为2.79。由于文件系统不常创建,所以该损失不是那么重要。读测试所有测试介于0.95到1.25 之间,这表示速度损失不超过25%,
写性能测试中我们可以看到,大型文件也受到适度损失。小型文件创建操作会产生最大的写性能影响。该测试中第二大性能影响者是XFS,值为1.82。
由于这些数字是未对齐性能与对齐性能之比,值为10.9时表示一个数据提取在合理对齐的分区上需时10秒,而在未合理对齐的分区上需时109秒…如此巨大的差别,可以想象实际应用时候的表现。对于 XFS,值为1.82时表示这个10秒钟的操作在未合理对齐的分区上需要花18.2秒的时间。与前面相同,值为1时表示没有性能损失;更高的值表示性能下降。
通过数据我们可以看到,写入性能的损失相比读取更为严重,10倍的掉速概念想必每一个朋友都感到胆寒。当然此类测试在实际应用中,情况也许没有这么夸张,但25%的性能缺失是不能够忽视的。
推荐经销商