Почему в MD RAID (mdadm) рекомендуется отключать NCQ для каждого диска? эхо 1> / системный / блок / SDX / устройство / queue_depth
Я читал этот совет во многих статьях по настройке RAID, но никто не объясняет почему.
Спасибо за Ваш ответ.
Википедия утверждает "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 г.), и я не знаю, решена ли она.
NCQ может негативно влиять на планировщик ввода-вывода операционной системы, фактически снижая производительность; [6] это наблюдалось на практике в Linux с RAID-5. [7] В NCQ нет механизма для хоста, чтобы указать какие-либо крайние сроки для ввода-вывода, например, сколько раз запрос может быть проигнорирован в пользу других.