酷徒LOGO

禁用 NCQ


问题:

为什么建议在 MD RAID ( mdadm ) 中禁用每个磁盘的NCQ? echo 1>/sys/block/sdX/device/queue_depth

我在许多关于RAID调优的文章中阅读了这个技巧,但没有人解释为什么。


回答 1:

维基百科关于 NCQ的文章中:

NCQ会对系统计划程序的操作系统造成负面影响,实际上降低性能;在Linux中,如果主机没有考虑到请求的多少次可以忽略请求,那么主机就会在NCQ中指定 [6] 。


回答 2:

谢谢您的答复。

维基百科状态" NCQ can negatively interfere with the operating system's I/O scheduler, actually decreasing performance "它引用了本文 http://www.cs.albany.edu/~sdc/CSI500/Fal10/DiskArmSchedulingPapers/a2-yu.pdf

本文状态" Under a random workload, the I/O scheduler should be disabled, that is, noop, and NCQ in charge of scheduling requests entirely; when under a sequential workload, an I/O scheduler should take full charge of scheduling them instead of NCQ. It implies that the type of information that can help scheduling decision can vary according to the workload type. "

因此,在顺序工作负载下似乎是一个问题,但不是随机工作负载下的问题。

根据得出的结论" In the long run, we suggest that a new SATA 2 specification should contain a well-defined interface to fully control NCQ mechanism. "

但这篇文章是相当旧的( 2010 ),不知道它是否已经解决了。





Copyright © 2011 HelpLib All rights reserved.    知识分享协议 京ICP备17041772号-2  |  如果智培  |  酷兔英语  |  帮酷