Should I use the old trick with disabling the controller’s use of Read FPDMA Queued commands?
Using the PDCM utility supplied with the Promise controller, I can prohibit the queuing of commands. I will test the drive with commands queuing on and off to see how useful NCQ is for the WD1500AHFD drive.
For the results not to depend on a controller from only one manufacturer, I will also use the controller integrated in Intel’s ICH7R South Bridge in which case I disable NCQ support from the mainboard’s BIOS (by disabling the AHCI option).
There are four graphs in the next diagram, two for each controller. The graphs illustrate the reaction of the controller and drive to the increase of the request queue length.
So, NCQ does work in the new drive, that’s certain. And the drive’s performance with enabled NCQ is almost the same on both the controllers. When NCQ is disabled, the graphs differ – and the graph I got on the Intel controller looks somewhat better. I’m not giving a rebuke to the Promise controller – I guess only a tester would take this controller and attach an NCQ-supporting disk to it only to disable then that very NCQ!
So, the Raptor X does support Native Command Queuing. Let’s now see how this hard drive is going to handle a stream of commands with requests to read as well as to write data. I created a few IOMeter patterns with a different percentage of write operations and ran them on the drive (which was connected via the Promise controller).
The graphs are quite interesting. You can see they are leveling out in the area of low loads as the share of write operations increases. At the same time, the graphs with a big share of writes degenerate almost into a flat line in the area of high loads.
There is only one explanation that suggests itself – that this is all due to the smaller share of read requests. Can it be then that NCQ works only for read requests? At least it looks so. Let’s check it out right now, then.
How? I’m just going to run the test with 100% of write requests with the controller’s support for NCQ turned on and off. If NCQ works, the resulting graphs will differ. If the graphs are similar, then my supposition is true.