Abstract
As PCIe-based SSDs become more and more powerful, they are increasingly being used in a virtualized server environment. IO virtualization is an efficient method for VMs to share the resources of the SSD as it allows VMs to directly communicate with the SSD virtual functions instead of going through the hyper-visor layer, thus improving throughput and reducing latency.
In this talk, the author will present methods to manage resource sharing within an IO virtualization-enabled PCIe SSD, with an NVMe front end. The goal is to achieve maximum utilization of SSD internal resources with minimum overhead, while providing customers the flexibility to configure the number of virtual functions and the capabilities associated with each virtual function. More specifically, the presenter will discuss unified architecture that allows both structurally separable and structurally non-separable resources to be shared by virtual functions within an IOV-enabled PCIe SSD.
Learning Objectives
IO Virtualization is important for enterprise SSD
Managing shared resource in SSD controller contributes to better IO virtualization performance
There is an unified architecture to manage different types of shared resources in IO virtualized SSD