NVMesh is an open source distributed storage system that pools NVMe drives across many servers into one shared, high-performance pool. It was originally designed as a Linux kernel module - and while kernel mode is highly performant, what pulled us to the DPU was offloading storage software off the host, isolating it in its own secure domain, and decoupling it from whatever the host happens to be running.
This talk is a field-tested case study in building a userspace version of that same storage client. We'll cover why kernel mode wasn't the right fit for the DPU environment, what building that userspace path took, & the tradeoffs between the two. We'll cover the nuances of providing identity & configuration to your applications on the DPU - problems shaped less by the DPU than by the automated, fleet-managed environment it's almost always part of - such as k8s.
Everything we discuss is vendor-neutral - any team moving host software onto a DPU or IPU will recognize these same lessons & gain the same benefits we did. So whether you're thinking, planning or already undergoing a migration - this talk should save you from re-learning these lessons the hard way.