Our researchers have pioneered an innovative approach to implementing virtual memory in data centers, which will greatly increase server efficiency.
As big data, used by everything from AI to the Internet of Things, increasingly dominates our modern lives, cloud computing has grown massively in importance. It relies heavily on the use of virtual memory with one data server running many services for many different customers all at the same time, using virtual memory to process these services and to keep each customer's data secure from the others.
However, the way this virtual memory is deployed dates back to the 1960’s, and the fact that memory capacity is always increasing is actually beginning to slow things down. For example, data centers that provide services such as social networks or business analytics spend more than 20% of their processing time in virtual memory and protection checks. That means that any gains made in this area will represent a huge benefit in efficiency.
Midgard: saving energy in the cloud
Our researchers have developed Midgard, a software-modelled prototype demonstrating proof of concept to greatly increase server efficiency. Our research paper, Rebooting Virtual Memory with Midgard, has been presented at ISCA’21, the world’s flagship conference in computer architecture, and is the first of several steps to demonstrate a fully working system.
“Midgard is a technology that can allow for growing memory capacity, while continuing to guarantee the security of the data of each user in the cloud services,” explains Professor Babak Falsafi, Founding Director of the Ecocloud Center and one of the technology's inventors. “With Midgard, the all-important data lookups and protection checks are done directly in on-chip memory rather than virtual memory, removing so much of the traditional hierarchy of lookups and translations that it scores a net gain in efficiency, even as more memory is deployed,” he continued.
In recent testing at low loads, the Midgard system was 5% behind standard performance, but at loads of 256 MB aggregate large cache it was able to outperform traditional systems in terms of virtual memory overheads.
An outstanding feature of Midgard technology is that, while it does represent a paradigm shift, it is compatible with existing operating systems such as Windows, MacOS and Linux. Future work will address the wide spectrum of topics needed to realize Midgard in real systems, such as compatibility development, packaging strategies and maintenance plans.