PCIe implementation of NVMe over Fabrics (NVMe-oF)
The Storage Performance Development Kit (SPDK) is an open-source implementation of NVMe-based storage solutions, including an NVMe-oF driver implementation with support for various RDMA technologies. We want to extend this implementation with support for Dolphin’s PCIe technology and use PCIe for transport.
The task for the master project will be to:
- Getting familiar with DMA and NVMe storage devices
- Explore the possibilities for, and if possible implement, a generic VFIO interface for Dolphin’s PCIe technology
- Implement support for PCIe transport in SDPK, using either VFIO or Dolphin’s SISCI API if VFIO is not feasible
- Survey state of the art RDMA transport APIs, and run performance comparisons with RDMA transports, for example, RoCE and Infiniband
Implement support for NVMe-oF over a PCIe “fabric” for SPDK, using native DMA. Run performance benchmarks and analysis of implementation and compare it to state of the art RDMA solutions.
In-depth knowledge of NVMe-based storage solutions, NVMe-oF and memory architectures in distributed systems. The student will also gain knowledge about state-of-the-art RDMA solutions.
Good understanding of C programming. The student should have completed INF3151 or equivalent. IN5050 is recommended in the degree.
- Håkon Kvale Stensland
- Jonas Markussen, Dolphin Interconnect Solutions
- Hugo Kohmann, Dolphin Interconnect Solutions
Dolphin Interconnect Solutions