我在服务器上有四个磁盘,其中两个是WD15EARS,我试图把这两个WD15EARS放在Linux mdadm RAID中,但由于某种原因,磁盘arrays的性能非常慢(它同步速度约为15 MB / s) 。 起初我以为这是一个alignment问题,因为他们是先进的格式驱动器,但我不这么认为。 这是我如何alignment他们。 我的台式电脑中也有两个这样的驱动器,它们与LVM和RAID一起苦苦经营,运行良好。
我对单个驱动器(sdb和sdd)做了一些速度testing。 Hdparm -t对于sdb显示80 MB / s,对于sdd显示只有30 MB / s(另外两个驱动器,两个Samsung驱动器,测量速度约为100 MB / s)。 这些结果是可重复的。 这也表明,这不是一个alignment的事情,因为那么hdparm -t会在两个驱动器上很慢。
我一直无法辨别出任何可能解释为什么其中一个驱动器较慢的差异,只是SMART在良好的驱动器上报告了以下内容:
Offline data collection status: (0x82) Offline data collection activity was completed without error. Auto Offline Data Collection: Enabled.
它报告坏的驱动器:
Offline data collection status: (0x85) Offline data collection activity was aborted by an interrupting command from host. Auto Offline Data Collection: Enabled.
自动脱机数据收集应该每四小时运行一次,但坏的驱动器上的状态消息不会改变。
我假设这是这个离线收集导致放缓,但我无法中止它。 Smartctl -X没有做任何事情,这是有道理的,因为根据smartctl -c ,驱动器没有“Abort Offline collection on new command”function。
我目前正在进行长时间的自我testing,希望能产生一些东西,但同时,我希望是否有人知道可能会发生什么。
编辑:自测完成,它说没关系。 closures自动离线数据收集也没有帮助。
而且,我只是做了DD写testing。 dd if=/dev/zero of=/dev/sdX bs=10M在良好磁盘上为65 MB / s,在坏磁盘上约为15 MB / s。 肯定有什么错。
编辑2:我拿起数据中心的驱动器,并用USB转SATA连接到我的电脑。 现在它工作正常…
自动声学pipe理(AAM)可能导致显着降低的性能 – 使用hdparm -M检查两个驱动器上的状态,并通过将值设置为254来完全禁用它。
另外,使用hdparm -W在驱动器上启用写入caching应值得尝试。
由于您正在使用Caviar Green驱动器(对于Linux RAID设置,您不应该这么做),并且已经在使用它,请确保禁用节能function, 特别是IntelliParkfunction 。
如果没有任何帮助,这可能是硬件问题 – 打开一个RMA并将驱动器返回给WD。
我解决了它。 原来的SATA(AHCI)没有启用。 它现在可以工作(arrays与70 MB / s同步)并且读取的速度是120 MB / s。 尽pipe如此,这种缓慢不应该发生在传统模式中,但至less它已经消失了。
我现在也有适当的NCQ。 我曾经有非function性NCQ( dmesg|grep -i ncq :队列0/32;零表示磁盘支持,但控制器不支持)。
检查4k扇区上的分区alignment。