Exploiting Byte-Accessibility of SSDs Within a Unified Memory-Storage Hierarchy [pdf]
jianh.web.engr.illinois.edu
jianh.web.engr.illinois.edu
The gains measured in the paper are using emulation, so, like, they didn't really hack SSD firmware. There's got to be some cost on the controller side to service these new requests. And they seem to be accounting for this, but of course taking away some overheads doesn't take away the underlying limits of the storage medium or controller.
A couple things make something like this more interesting in the future: PCIe 4 doubles bandwidth and is supposed to be coming in some AMD chipsets soon (and the PCIe 5 spec has been finalized and, once it's really shipping, provides another doubling), and of course Intel/Micron's new storage medium has zippier read/writes than Flash.
I wonder whether arrangements like this over PCIe end up a middle ground between using swap/mmap'ing vs. way pricier setups with nonvolatile DIMMs.
In terms of SSD durability, by tracking mutations at the controller you can avoid unnecessary re-writes so where reading may have been (page-in-block, interpret, page-out-block), reading can now be direct and limited to the range of interest.
At least that was my first-glance take.
The march is of course to have the devices on the most high performance bus that makes sense from a cost efficiency standpoint, hence their mention of GenZ and similar technologies. We're definitely getting closer in the industry, I was just using an FPGA connected to a GenZ bus that exposed an NVMe device this week! Early prototype, but it worked in Ubuntu 18.04.