Während ich einen 2-Festplatten-Fehler in meinem 3-Festplatten-RAID 5-Setup behoben habe, stellte ich fest, dass die Rekonstruktion bei deaktiviertem NCQ (~ 90 M / s) schneller war als bei aktiviertem NCQ (~ 50 M / s). Das Ausführen von bonnie ++ zum Benchmarking der beiden Konfigurationen ergab auch eine deutlich bessere Schreibleistung für den sequentiellen Ausgabeblock:
- kein NCQ - 85 M / s, 2021 ms Latenz
- NCQ - 62 M / s, 57118 ms Latenz
Sind 57 Sekunden nicht ein bisschen zu lang?
Ich habe NCQ mit dem Kernel-Parameter libata.force = noncq deaktiviert und die Tests zweimal abwechselnd ohne weitere Konfigurationsänderungen ausgeführt. Ich habe auch bonnie ++ auf Partitionen auf den drei Komponentenfestplatten ausgeführt und keine signifikanten Unterschiede zwischen der Ausführung mit oder ohne NCQ festgestellt.
Hier ist die vollständige Ausgabe von bonnie ++:
Version 1.96 ------Sequential Output------ --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
raid5-noncq 24G 435 92 85154 18 53585 9 3409 93 154272 10 297.6 13
Latency 525ms 2021ms 235ms 27652us 158ms 747ms
raid5 24G 372 81 61591 7 60999 9 3130 86 160280 10 296.4 13
Latency 18784us 57118ms 11323ms 59583us 133ms 150ms
sdd-ext4-noncq 24G 513 97 73428 8 33118 4 3324 91 90266 5 170.6 1
Latency 17985us 503ms 1805ms 30066us 15626us 1341ms
sdd-ext4 24G 499 97 71223 8 33015 4 3326 95 95342 5 276.0 3
Latency 17689us 1124ms 1345ms 11202us 18187us 1213ms
sde-ext4-noncq 24G 517 97 48200 5 22385 3 3555 94 62578 3 174.3 1
Latency 22423us 1609ms 2296ms 13131us 22446us 1960ms
sde-ext4 24G 491 97 47942 5 22317 3 3281 95 62669 3 257.1 3
Latency 20081us 2860ms 2434ms 12207us 27984us 990ms
sdb-ext4-nonc-2 24G 976 99 81552 9 47557 6 3514 95 146167 8 208.6 7
Latency 13004us 227ms 758ms 40575us 59198us 219ms
sdb-ext4 24G 1014 99 79603 8 48778 6 3598 97 146225 8 310.1 10
Latency 10686us 659ms 400ms 20054us 67295us 226ms
------Sequential Create------ --------Random Create--------
-Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files:max:min /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
raid5-noncq 16 8997 38 +++++ +++ 18071 22 18097 75 +++++ +++ +++++ +++
Latency 25974us 695us 738us 123us 21us 43us
raid5 16 4227 21 +++++ +++ 15053 25 11634 58 +++++ +++ 20341 33
Latency 26221us 735us 735us 172us 15us 55us
sdd-ext4-noncq 16 10453 53 +++++ +++ +++++ +++ 16324 82 +++++ +++ +++++ +++
Latency 245us 1126us 895us 204us 30us 46us
sdd-ext4 16 15339 51 +++++ +++ +++++ +++ 23763 77 +++++ +++ +++++ +++
Latency 192us 957us 641us 115us 94us 101us
sde-ext4-noncq 16 12825 41 +++++ +++ +++++ +++ 21636 68 +++++ +++ +++++ +++
Latency 452us 662us 642us 115us 20us 41us
sde-ext4 16 13185 45 +++++ +++ +++++ +++ 23033 77 +++++ +++ +++++ +++
Latency 136us 634us 655us 118us 28us 41us
sdb-ext4-noncq 16 4657 78 +++++ +++ +++++ +++ 6912 97 +++++ +++ 23160 95
Latency 89592us 180us 115us 348us 46us 131us
sdb-ext4 16 5061 75 +++++ +++ +++++ +++ 7011 97 +++++ +++ 23400 95
Latency 12010us 110us 119us 633us 30us 143us
quelle
bonnie++
einen linearen Modus? Haben Sie versucht,dd
mit / ohne NCQ zu steuern?Antworten:
Vielen Dank für die Aktualisierung der Frage! Es scheint, als würde der NCQ-Test mit dem RAID5 nur zeigen, dass der NCQ ignorant durchgeführt wird, wie die Daten auf die Festplatten geschrieben werden müssen, selbst wenn sie sich in Software befinden (dies ist meiner Erfahrung nach ein sehr häufiges Problem bei E / A-Schedulern und Hardware-Raids , http://blog.nexcess.net/2010/11/07/changing-your-linux-io-scheduler/ ).
Von: https://raid.wiki.kernel.org/index.php/Performance
Ich denke, die anderen Tests bestätigen, dass NCQ funktioniert, wenn direkt mit der Festplatte gesprochen wird, da sie entweder eine Leistungssteigerung zeigen oder in der Nähe sind, da dies keinen Unterschied zu den noNCQ-Tests macht.
In Bezug auf den 57s-Wert ist dies nur ein Artefakt davon, wie viel E / A-Puffer Sie haben und welchen Scehduler Sie verwenden. Wenn Sie sich Sorgen über die interaktive Reaktionsfähigkeit des E / A-Systems machen, sollten Sie wahrscheinlich einen anderen Scehduler untersuchen (siehe: http://blog.nexcess.net/2010/11/07/changing-your-linux-io-scheduler/ ).
quelle