Today we are glad to announce the first open-source release of Infiniswap, the first practical, large-scale memory disaggregation system for cloud and HPC clusters.
Infiniswap is an efficient memory disaggregation system designed specifically for clusters with fast RDMA networks. It opportunistically harvests and transparently exposes unused cluster memory to unmodified applications by dividing the swap space of each machine into many slabs and distributing them across many machines’ remote memory. Because one-sided RDMA operations bypass remote CPUs, Infiniswap leverages the power of many choices to perform decentralized slab placements and evictions.
Extensive benchmarks on workloads from memory-intensive applications ranging from in-memory databases such as VoltDB and Memcached to popular big data software Apache Spark, PowerGraph, and GraphX show that Infiniswap provides order-of-magnitude performance improvements when working sets do not completely fit in memory. Simultaneously, it boosts cluster memory utilization by almost 50%.
Primary features included in this initial release are:
- No new hardware and no application or operating system modifications;
- Fault tolerance via asynchronous disk backups;
- Scalability via decentralized algorithms.
Here are some links, if you want to check it out, contribute, or just want to point someone else who can help us to make it better.
Git repository: https://github.com/Infiniswap/infiniswap
Detailed Overview: Efficient Memory Disaggregation with Infiniswap
The project is still in its early stage and can use all the help to become successful. We appreciate your feedback.
Infiniswap looks interesting! I will add this to my list of technologies to keep an eye on.
It would be good if there was a comparison of the various systems that are aiming to utilize memory at a larger scale. To understand each ones strengths and weaknesses.
ScaleMP Foundation
http://www.scalemp.com/solutions/cluster/
https://en.wikipedia.org/wiki/Virtualization_for_aggregation
Partitioned Global Address Space (PGAS)
https://en.wikipedia.org/wiki/Partitioned_global_address_space
HP’s The Machine
https://venturebeat.com/2017/05/16/hp-enterprise-unveils-single-memory-160-terabyte-computer-the-machine/
Thanks for the pointers Ken. We weren’t aware of the ScaleMP solution, but for the rest, they either require specialized hardware or changes to applications or OS, or all of the above.
Slide 23/24 of this deck from Juncheng’s NSDI talk (https://www.usenix.org/sites/default/files/conference/protected-files/nsdi17_slides_gu.pdf) has a comparative summary.