Now, let’s compare the speeds of all the RAID arrays in different caching modes. We fill the table with ratios of the controller’s speed in the WB mode to its speed in the WT mode. A higher number means higher efficiency of WB caching in this mode. If the number is below 1 (marked with red), WB caching is harmful. If the number is above 1 (marked with blue), WB caching brings a performance gain. If you see “1.0”, then WB and WT caching modes are equally useful.

Overall, it seems like WB caching is good for all the arrays, except the RAID5. The details follow:
WB caching has a positive impact on the JBOD, two- and four-disk RAID0s, RAID1 and RAID10. This influence gets stronger when there are more write requests in the queue and gets weaker when the workload is small. The maximum speed gain of the above-mentioned arrays is 32%, 25%, 18%, 31% and 29%, respectively. We see black numbers mostly in the Random Read mode, where there are no writes and caching cannot affect anything. WB caching inhibits the performance of the RAID1 and RAID10 arrays under a workload of 256 requests, but the loss is only 1% and such workloads are rare in practice. There is also one more mode for the RAID10 array (60% writes under linear workload) when WB caching is injurious, but everywhere else it brings certain benefits.
The controller’s lazy writing affects positively the performance of the four-disk RAID5 under small and average loads. The maximum speed growth is 183%! However, under higher workloads, WB caching becomes harmful, although the speed loss is only 6%.
For the three-disk RAID5, the border between positive and negative effects of WB caching goes along the line between the Random Read mode under linear load and Random Write mode under the maximum load. The maximum speed gain is 190%; the maximum speed loss is 12%. It is all natural with the maximum gain. All arrays benefit from the maximum efficiency of the controller’s lazy write at the Random Write point, but the maximum loss falls on the Random Read mode and that’s strange: there are no write requests here and WB caching cannot affect anything. This is another “peculiarity” of this RAID5.
For the three-disk RAID0, this border between positive and negative effects of WB caching goes along the line between the Random Read mode under the maximum load and Random Write mode under linear load. Thus, the status of the controller’s lazy write doesn’t affect the speed in the Random Read mode, but the efficiency of WB caching declines at high writes percentages.
As you see, WB caching is not always useful. It usually brings benefits at small loads, but at big loads it is either useless or harmful. That’s why you should decide whether to use it or not depending on the type of the array and the expected load on the controller.





