IDE Block Mode

 






Dissection

So, what do the benchmark results tell us? Let's recap the results and see what we can understand from them.

Business Disk WinMark 99

Instead of a incredible difference in performance, we saw only a miniscule improvement in performance with IDE Block Mode enabled. Mathematically speaking, IDE Block Mode improved performance by approximately 1.7% over the disabled mode.

High-End Disk WinMark 99

In the high-end portion of the WinMark disk tests, the system showed absolutely no change in performance whether the feature was enabled or not.

Winstone 99

Enabling the feature definitely improved overall system performance but only by a miserly 0.4%.

From the results, it's evident that IDE Block Mode improved the raw transfer rate by a maximum of about 1.7%. This translated into an improvement in the overall system performance of only 0.4%. Note that this is only for office applications, as used in the Winstone 99 benchmark suite.

Games may benefit more or less depending on its reliance on the hard disk. Naturally, games with minimal graphics will benefit less while games that uses lots of textures or other streaming data will benefit more from the feature. However, the maximum benefit realized should be rather lower than the improvement of 1.7% seen in the Business Disk WinMark 99 test. This is because games do more than just transfer data. :-)

Now, that's pretty pathetic considering what we would have expected from such a promising feature. Remember  that instead of just transferring 512 bytes per interrupt, IDE Block Mode allows transfers of up to 64KB per interrupt. On cursory examination, one would have converted that fact into an improvement in transfer rate of 128X in magnitude!

Unfortunately, that would be a wrong way of looking at things. Note that while IDE Block Mode increases the amount of data that can be transferred per interrupt, it does not directly increase the throughput of the hard disk. Any increase in throughput after enabling this feature should be considered wholly as a welcomed side effect, one that's due to improved efficiency.

Instead, IDE Block Mode's main purpose is to reduce the overhead of IDE transactions. Transferring 1MB (1024KB) of data will require 2048 interrupts with the standard IDE protocol. But with IDE Block Mode, the number of interrupts could be reduced to only 16. I only wrote "could" instead of "would" because some data transfers will definitely be less than 64KB in size. So, the number of interrupts required with IDE Block Mode would generally be more than the 16 stated above for a 1MB transfer but will definitely be a lot fewer than the 2048 interrupts required by the standard transfer mode. In any case, the sheer potential in the reduction in overhead is quite apparent.

With fewer interrupts, less processor time is taken up if DMA transfers was not enabled. But if you are using a bus-mastering driver from your chipset manufacturer (or have enabled DMA transfers for the bus-mastering driver shipped in Win9x/2000), the fewer interrupts mean that the IDE controller will be able to process them faster and spend more time transferring data instead of shuffling data requests. This translates into greater efficiency which accounts for the slightly higher transfer rate recorded by the benchmarks.

So, if you not using a bus-mastering driver (or have left it disabled), you should expect less CPU utilization with IDE Block Mode enabled. It wouldn't be as low as it would be with a bus-mastering driver because the processor is still burdened with the job but it would definitely reduce the load. So, the processor will be able to allocate more time to process other tasks, instead of IDE transactions.

But if you are using a bus-mastering driver, the chipset has already taken over the processor's job of handling IDE transactions. There would not be any improvement in CPU utilization as a result because the processor's involvement has already been minimized. But there would a significant improvement in efficiency because of the huge reduction in the number of interrupts to be processed. The end result would be faster access to the data (due to a much lower overhead) and a slightly higher throughput.

 

 
 

 

 
     
   

 

 
   

 
     
 

                   

 
   

 

 
 
Last Updated 24-08-2000

All trademarks used are properties of their respective owners.
Copyright © 1998-2000 Adrian Wong. All rights reserved.

 
Visit the new Tech ARP @ http://www.techarp.com/ !