When we look to hyper-scale data centers, flash management looks a lot different than it does on standard enterprise or consumer drives. That is the problem that Kioxia SEF is aiming to solve. SEF, which stands for Software-Enabled Flash, is still in its earlier stages but is vying for a seat at the hyper-scale table. Hyper-scale customers look to maximize resource utilization by minimizing per-device redundancy. They are deploying so much flash in data centers, for example, that they can manage flash faults through large pools rather than on individual devices. Persistent memory such as Intel Optane DCPMM and NVDIMMs can be used instead of on-drive write caches to acknowledge writes before having to traverse the PCIe bus. That is the world that Kioxia imagines SEF finding a foothold.
Kioxia Software-Enabled Flash or SEF
We are going to go through Kioxia’s slides on this one starting with the summary and then working through them. Kioxia is advocating an approach of using a new kind of hardware flash controller and offloading some capabilities while allowing the large data center customers to do more of their management at scale.
Part of this is that SEF will be built around a flash-native API that Kioxia plans to open source, likely later in 2020. In theory, other flash suppliers can extend SEF to work with their NAND since all NAND operates differently at a very low level.
As a quick note here, we have to apologize to our readers for some of the slides. We normally do not advocate using green on black or white on pink for low contrast slides, but that is part of the new Kioxia branding.
Some of the key features are the ability to offload much of the low-level flash management to a controller which frees up CPU cycles. One can see the PCIe interface. In the future PCIe Gen5 era, this could potentially be a CXL endpoint. Also, the DRAM is being used as either on-controller or DRAM-less. By using persistent memory instead of on-SSD DRAM for write cache, hyper-scalers get better DRAM utilization and lower costs.
Some of the cool features here are that it can run different services which means a device can run many protocols/ services simultaneously on the same flash device. As a result, this gives more control to hyper-scale customers.
Kioxia is hopeful that the open-source initiative will gain steam and other flash vendors join in with SEF. For anyone who is wondering, you may want to pronounce SEF like “Ceph” which makes everything very confusing when you say SEF Native or SEF Device. It sounds like this is going to have to be pronounced S E F.
Part of Kioxia’s challenge is that it needs to persuade its rival SSD and NAND manufacturers such as Intel, Micron, and Samsung to adopt SEF. Hyper-scalers want choice so this needs to be an industry effort. For companies such as Micro, Samsung, and SK.Hynix, a DRAM-less controller means they sell less DRAM to hyper-scale SSDs. Still, Microsoft and other hyper-scalers have been pushing to rationalize DRAM usage as is an enormous cost component in their data centers. As we saw with CCIX versus CXL, sometimes it takes a big vendor and hyper-scaler adoption to force consolidation around a direction. Time will tell how SEF goes.
As a bonus, if you are wondering how to pronounce Kioxia, do no worry. We have a video for that.
That video and the How to Pronounce Kioxia article both have tricks so you can pronounce it correctly.