Native Command Queuing, NCQ 
The UK's Premier Supplier of Quality PCs
Home Products

 

 
 
   

Introduction
DiamondMax 10 Specification
Native Command Queuing
Data Recovery
Test Setup
Benchmark Results
Conclusion

Native Command Queuing 

 


 

A simple way to explain how a hard disk works is: hard disks receive read/write requests from the chipsets I/O controller which are then buffered on the hard disks memory controller. The buffered requests are then carried out by the hard disk's on board controller. The hard disk's heads then move to the correct part of the disk (platter) to perform the read or write.

The problem with this method is that the hard disk performs the requests in the order that it gets them. If the first request is at the start of the disk, the second at the end of the disk and the third at the start of the disk, the hard disk would have to move all the way across to the end of the disk and back again. This process would naturally take longer than having to read three files at the start of the disk. This is why hard disks manufacturers recommend you defrag your hard drive frequently.

Native Command Queuing allows the hard disk to dynamically change the order in which the read/write requests are done. For the example above the hard disk would reorder the requests so that the first and third requests are done before second. This would save the whole disk head moving across the platter and back again, theoretically halving the time taken to perform the task.

Another way to present NCQ is to compare it to the "Travelling Salesman Problem". NCQ is very similar to the TSP. Essentially, the TSP is a logistics problem requiring a travelling salesman who has to visit a variety of different locations to optimise the route he takes to cover all customers with the minimum amount of travelling. It is discussed a lot in logistics courses and there are vast corporate resources devoted to managing internal versions of this problem - whether relating to delivery trucks' routes or field service engineers' work plans - as companies can save a lot of money by working out the optimum route their vehicles travel. The TSP is a particularly good example to explain NCQ as it bears this similarity to it: the larger the number of locations that need to be covered, and the further away they are, the more there is to be gained from optimising the route.

Here are two examples of a hard disk travelling to read data at four different physical locations on a platter. The red line shows the route the reading head takes. It is obvious from the images that the second one uses NCQ to minimise the distance the head travels.

 

Demonstration of Native Command Queuing

 

Typically, the time taken to access a file is the normal seek time the hard disk displays added to the rotational latency (time taken for all the spinning). Reducing the latency sufficiently can halve the access time.

For general hard disk usage such as application and game loading NCQ doesn't add much benefit. When an application or game is installed on the hard disk all its contents are located around the same area. So, when an application or game is loaded the amount of hard disk head movement is naturally low. Further, the fact that most applications and games load sequentially causes NCQ to not make a big difference in disk access times.

Running two different applications simultaneously is where NCQ should start to shine. Two applications at two different locations on a hard disk fighting for access will benefit from NCQ. With the increase of multi threaded applications and the use of Hyper Threading technology, NCQ will gain in popularity.

A technical paper on NCQ (PDF, 670 KB)

The bad news is that there are a very few motherboards that support NCQ. Our test setup hardware >>

 

 

 

 

 

 

 

 

 

Home Products

  Copyright 1996-2010 Best Price Computers Ltd

Last updated: Jan, 2010