One possible benefit is for applications that modify sparse memory blocks smaller than a page, assuming "Extended Memory" licences and incorporates Badam and Pai's SSDAlloc to optimize SSD rewriting.
Fusion-io this week said that it has collaborated with Princeton University computer scientists to design a new subsystem called Extended Memory, available exclusively for Fusion ioMemory as part of the Fusion-io software development kit (SDK). The Extended Memory subsystem transparently extends system memory from DRAM onto flash, providing much more high-performance memory capacity than currently possible with DRAM alone.
“DRAM is not only a costly resource in modern computing, but the capacity DRAM offers is also extremely limited. Extended Memory offers a cost-effective alternative to large DRAM installments by allowing applications to extend their in-memory data from DRAM onto ioMemory,” said Vivek Pai, Associate Professor of Computer Science at Princeton.
Many enterprises are attracted to the benefits of storing all data in-memory, especially to meet the needs of webscale, cloud and big data computing, but DRAM is relatively expensive, not persistent, and relatively limited in capacity in cases of mainstream systems (up to 1TB - 1.5TB in case of Xeon E7/E5 four-socket platform). The Extended Memory feature intelligently tiers data between available DRAM in the system and the persistent NAND flash tier, making it much more affordable for organizations to greatly expand the size of their in-memory data sets with a powerful software-driven solution.
The Extended Memory subsystem dynamically moves frequently accessed data pages into memory on-demand while transparently migrating rarely accessed data pages from DRAM into ioMemory. This allows developers to simplify application design by assuming that entire datasets are in-memory, without the costs associated with DRAM purchase and operation. Application developers are able to further tune performance through software development kit tools that lock selected pages into DRAM, giving access to NAND flash as memory, instead of treating it as an extension of disk storage. This allows legacy applications to scale up with flash memory, instead of scaling out, boosting performance and reducing total cost of ownership.
“Since Fusion ioMemory has moved beyond legacy disk-era protocols, we can integrate new features like the Extended Memory subsystem to truly advance application performance for enterprise computing in ways that are simply not possible with traditional SSDs,” said Chris Mason, Fusion-io director of kernel engineering and principal author of the Btrfs file system for Linux.