On Huawei OceanStor Dorado V6 all-flash storage systems, controllers label each I/O with a priority according to its type to ensure stable latency for specific types of I/Os. This allows the system to schedule CPU and other resources and queue I/Os by priority, offering an end-to-end I/O-priority-based latency guarantee. Specifically, upon reception of multiple I/Os, SSDs check their priorities and process higher-priority I/Os first.
Huawei OceanStor Dorado V6 all-flash storage systems classify I/Os into the following five types and assign their priorities in descending order, achieving optimal internal and external I/O response.
-
Read and write I/Os
-
Advanced feature I/Os
-
Reconstruction I/Os
-
Cache flush I/Os
-
Garbage collection I/Os
End-to-end I/O priority in figure below.

On the left side in the preceding figure, various I/Os have the same priority and contend for resources. After I/O priority adjustment, system resources are allocated by I/O priority.
On each disk, in addition to assigning priorities to I/Os, Huawei OceanStor Dorado V6 all-flash storage systems also allow high-priority read requests to interrupt ongoing write and erase operations. When a host writes data to a storage system, a write success is returned to the host after the data is written to the global cache. When a host reads data from a storage system, data needs to be read from SSD disks if the cache is not hit. In this case, the disk read latency directly affects the read latency of the host. Huawei OceanStor Dorado V6 all-flash storage systems are equipped with the latest generation of Huawei-developed SSDs and use the read first technology to ensure a stable latency.
Generally, there are three operations on the flash media of an SSD: read, write, and erase. The erase latency is 5 ms to 15 ms, the write latency is 2 ms to 4 ms, and the read latency ranges from dozens of μs to 100 μs. When a flash chip is performing a write or an erase operation, a read operation must wait until the current operation is finished, which causes a great jitter in read latency.
Read first on SSDs - figure below

As shown in Figure, if a read request with a higher priority is detected during an erase operation, the system cancels the current operation and preferentially processes the read request. This greatly reduces the read latency on SSDs.
Oceanstor Dorado V6

