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
Knocking Down the Bone Pile: Tin Whisker Mitigation in Aerospace Applications, Part 3
06/25/2025 | Nash Bell -- Column: Knocking Down the Bone PileTin whiskers are slender, hair-like metallic growths that can develop on the surface of tin-plated electronic components. Typically measuring a few micrometers in diameter and growing several millimeters in length, they form through an electrochemical process influenced by environmental factors such as temperature variations, mechanical or compressive stress, and the aging of solder alloys.
Insulectro & Dupont Host Technology Symposium at Silicon Valley Technology Center June 25
06/22/2025 | InsulectroInsulectro, the largest distributor of materials for use in the manufacture of PCBs and printed electronics, and DuPont, a major manufacturer of flex laminates and chemistry, invite fabricators, OEMS, designers, and engineers to attend an Innovation Symposium – Unlock the Power - this Wednesday, June 25, at DuPont’s Silicon Valley Technology Center in Sunnyvale, CA.
MVTec, Siemens Expand Technological Cooperation
06/12/2025 | MVTecMVTec Software GmbH and Siemens are expanding their technological cooperation in the field of industrial automation. To reinforce their increasingly close collaboration, Siemens joined the MVTec Technology Partner Program in May 2025.
Nordson Electronics Solutions Develops Panel-level Packaging Solution for Powertech Technology, Inc. That Achieves Yields Greater Than 99% for Underfilling During Semiconductor Manufacturing
06/11/2025 | Nordson Electronics SolutionsNordson Electronics Solutions, a global leader in reliable electronics manufacturing technologies, has developed several solutions for panel-level packaging (PLP) during semiconductor manufacturing. In one particular case, Nordson’s customer, Powertech Technology, Inc. (PTI) saw underfill yields improve to greater than 99% as they plan to transition from wafers to panels in their manufacturing operations. edwd
ACCM Joins Polar’s Speedstack Material Partner Program
06/10/2025 | Polar InstrumentsAdvance Chip & Circuit Materials has recently joined the Polar Speedstack Material Partner Program to ease the inclusion of ACCM's innovative Celeritas build up materials into the PCB supply chain.