Introducing 'Mesh,' Memory-Saving Plug-In to Boost Phone and Computer Performance
September 20, 2019 | University of Massachusetts at AmherstEstimated reading time: 2 minutes
Applications like web browsers or smartphone apps often use a lot of memory. To address this, a research group co-led by Emery Berger, a professor of computer science at the University of Massachusetts Amherst, has developed a system they call Mesh that can automatically reduce such memory demands. Berger is presenting this work today at Cppcon, the C++ conference in Aurora, Colorado.
Berger and colleagues in the College of Information and Computer Science (CICS) expect Mesh to have a substantial impact on the computing world, from mobile applications to desktops to data centers, because no one has previously been able to compact memory in applications written in or running on top of widely-used languages like C, C++, or Objective C, the language used for iOS apps.
As the authors explain, programs written in C-like languages can suffer from serious memory fragmentation, where memory is broken up, much like a bad Tetris board, Berger says, so there are many empty gaps in between. "This is how memory gets wasted," he points out. "Imagine a Tetris board where you could stop and reorganize it at any time - this would make the game a lot easier, because you could always squeeze out the empty space. But you can't do this in C, just as you can't do it in Tetris."
Mesh effectively squeezes out these gaps by taking advantage of a hardware feature called "virtual memory" that is supported by almost all modern computers. "The trick is to find chunks of memory that can be interleaved, sort of like when interlocking gears mesh," Berger explains. When Mesh finds these chunks, it can reclaim the memory from one of the chunks by combining the two chunks into just one. "This meshing process works because we only change things in 'physical' memory. From the perspective of the program, which can only see 'virtual' memory, nothing has changed. This is powerful because we can do this for any application automatically."
The team reports that the results to date have been extremely promising; for example, using Mesh automatically reduces the memory demands of the Firefox web browser by 16%. For Redis, a popular open source data structure server, Mesh reduces memory demands by almost 40%.
The CICS Mesh team includes professor Emery Berger, an expert in memory management who designed the algorithm that the Mac OS X memory manager is based on, professor Andrew McGregor, a specialist in algorithm design and analysis, and doctoral candidates Bobby Powers and David Tench. Powers is a fourth-year doctoral candidate who also is an infrastructure engineer at Stripe, and Tench is a fifth-year doctoral candidate specializing in randomized algorithms.
In a field where "catastrophic fragmentation" was long accepted as inevitable, their software is a major step forward, the authors point out. "This is something that everyone thought to be impossible," notes McGregor. "After Emery had his key insight, we were able to analyze it theoretically and design an efficient algorithm to implement the idea. Against almost 50 years of conventional wisdom, it's great that we now have a solution to this important problem that not only works in theory, but is practical."
Earlier this year, Berger presented technical details at the ACM SIGPLAN Programming Language Design and Implementation conference (PLDI '19) in Phoenix. In response to the paper, Microsoft programmer and distinguished engineer Miguel de Icaza tweeted that Mesh is a "truly inspiring work, with deep impact. A beautiful idea fully developed. What an amazing contribution to the industry."
Suggested Items
indie Semiconductor Launches Advanced Smart Connectivity Solutions for In-Cabin Applications
04/23/2024 | indie Semiconductorindie Semiconductor, Inc., an Autotech solutions innovator, has introduced a family of new high-performance video converters and retimers to enable in-cabin connectivity applications, including audio and video transport and device interfacing.
IDTechEx Discusses the Role of Printed Sensors in Mass-Digitization
04/11/2024 | PRNewswireIntegrated sensors digitizing physical interactions are vital in everyday life. From personalized user experiences to warehouse inventory management, data-driven insights are driving demand for smarter sensors — and lots of them.
MKS Introduces ESI Geode G2 CO2 Laser System for High- Precision and High-Speed HDI and mSap Via Drilling
04/09/2024 | MKS Instruments, Inc.MKS Instruments, Inc., a global provider of technologies that transform our world, today announced the official launch of the ESI Geode™ G2 laser drill system, the next generation of the Geode™ platform for processing PCB and ICP materials.
DuPont Unveils Pyralux ML Laminate Series, Offering High Thermal Management for Extreme Environments
04/09/2024 | DuPontDuPont introduced the DuPont™ Pyralux® ML Series of double-sided metal-clad laminates, a unique addition to its extensive family of Pyralux® laminates for flexible and rigid-flex printed circuit boards (PCBs).
A Closer Look at Professional Development at IPC APEX EXPO 2024: 3D Printing and AI
04/09/2024 | I-Connect007 Editorial TeamWhile the finishing touches were being made to the show floor at IPC APEX EXPO, just as much activity was happening in the conference rooms of the Anaheim Convention Center on the days before the show officially opened. The hallways and classrooms were filled for standards committee development meetings and Professional Development Courses, and IPC hosted evening receptions for Emerging Engineers, ECWC, and those who are attending for the first time in a special “newcomers” event.