Linux Patch Posted For NVMe Flexible Data Placement (FDP)
A patch has been posted by Samsung engineers for implementing Flexible Data Placement (FDP) support within the Linux kernel's NVMe driver code. NVMe FDP allows for the host system to have more control over the placement of logical blocks on the storage device.
NVMe Flexible Data Placement allows for the host to have more control over data placement with the logical blocks in order to reduce the write amplification factor (WAF). Efficiently leveraging NVMe FDP can mean greater performance and reduced writes to ultimately extend the longevity of the solid-state storage.
With the Linux NVMe driver patch, user-space can send the data lifetime information using write hints to the NVMe drive. These user-space write hints work in a similar manner to what is already supported on Linux with SCSI drives.
More background information on NVMe FDP can be found via this slide deck from last year at the FMS 2023 summit by Google, Samsung, and Meta engineers.
The NVMe FDP support patch for the Linux driver is currently under review via the linux-block mailing list.
NVMe Flexible Data Placement allows for the host to have more control over data placement with the logical blocks in order to reduce the write amplification factor (WAF). Efficiently leveraging NVMe FDP can mean greater performance and reduced writes to ultimately extend the longevity of the solid-state storage.
With the Linux NVMe driver patch, user-space can send the data lifetime information using write hints to the NVMe drive. These user-space write hints work in a similar manner to what is already supported on Linux with SCSI drives.
More background information on NVMe FDP can be found via this slide deck from last year at the FMS 2023 summit by Google, Samsung, and Meta engineers.
The NVMe FDP support patch for the Linux driver is currently under review via the linux-block mailing list.
4 Comments