
Kioxia Demonstrates RAID Offload Scheme for NVMe Drives
At FMS 2024, Kioxia demonstrated their proposed new RAID offload methodology for enterprise SSDs. The incentive for this is quite obvious: as SSDs get faster with each generation, RAID arrays have a serious problem maintaining (and increasing) performance. Even in cases where RAID operations are handled by a dedicated RAID card, a simple write request on, say, a RAID 5 array will involve two reads and two writes to different drives. In cases where there is no hardware acceleration, the data received from a read must travel all the way back to the CPU and main memory for further processing before a write can be performed.
Kioxia has proposed using the PCIe DMA feature in conjunction with the controller memory buffer (CMB) of the SSD controller to avoid moving data up to the CPU and back again. The required parity calculation is performed by the accelerator block located in the SSD controller.
In Kioxia’s PoC implementation, the DMA engine can access the entire host address space (including the CMB of a peer BAR-mapped SSD), allowing it to receive and transmit data as needed from neighboring SSDs on the bus. Kioxia noted that their offload PoC reduced CPU utilization by nearly 50% and system DRAM utilization by more than 90% compared to software RAID running on the CPU. The proposed offloading scheme can also perform cleanup operations without wasting CPU cycles on the parity calculation task.
Kioxia has already taken steps to bring these features into the NVM Express working group. If adopted, the proposed offloading scheme will become part of a standard that could become widely available to multiple SSD vendors.
2024-08-12 18:30:00