Software Research Promises Faster Apps

A new approach to memory management allows computer code to operate more efficiently on multicore processors and can reduce the overhead of security checks.

Thomas Claburn, Editor at Large, Enterprise Mobility

April 5, 2010

2 Min Read
Dark Reading logo in a gray background | Dark Reading

A paper to be presented later this month at the IEEE International Parallel and Distributed Processing Symposium in Atlanta, Georgia, describes a new approach to memory management that allows software applications to run up to 20% faster on multicore processors.

"MMT: Exploiting Fine-Grained Parallelism in Dynamic Memory Management," co-authored by North Carolina State University (NCSU) researchers Devesh Tiwari, Sanghoon Lee, James Tuck, and Yan Solihin, proposes "a new approach for accelerating dynamic memory management on multicore architecture, by offloading dynamic management functions to a separate thread that we refer to as memory management thread (MMT)."

Multicore processors are now the norm in the computer industry, but many programmers have yet to learn how best to write programs that process data in parallel using all of the processor cores at once.

In a move that suggests the extent of the problem, Microsoft and Intel two years ago said they'd spend $20 million over the next five years to advance academic research on parallel computing.

Yan Solihin, associate professor of electrical and computer engineering at NCSU and a co-author of the paper, explained in a phone interview that MMT offers a way to make applications more efficient by moving memory management to a separate thread. This allows the application and its memory management code to execute at the same time.

"We noticed that there's a large group of software that's difficult to paralellize," he said. "A lot of these applications are also memory allocation intensive, meaning that that call malloc or free frequently. So our idea is to move this memory allocation to a separate thread. We call that the memory management thread, or MMT"

Solihin says the technique has been encapsulated into a library. To use it, a programmer merely needs to link to the library from his or her program. It can accelerate both client-side and server-side applications, such as Web servers and parsers, he said.

Used with memory management library called PHKmalloc, for example, MMT can limit the slowdown imposed by some of the library's security features. "Our focus is that these security checks and features are very expensive, slowing down our benchmarks by 21% on average, and by 44% in the worst case," the paper states. "The figure shows that MMT can hide the overheads almost completely, with an average slowdown of only 1%."

The paper is scheduled to be presented on April 21, 2010.

Read more about:

2010

About the Author

Thomas Claburn

Editor at Large, Enterprise Mobility

Thomas Claburn has been writing about business and technology since 1996, for publications such as New Architect, PC Computing, InformationWeek, Salon, Wired, and Ziff Davis Smart Business. Before that, he worked in film and television, having earned a not particularly useful master's degree in film production. He wrote the original treatment for 3DO's Killing Time, a short story that appeared in On Spec, and the screenplay for an independent film called The Hanged Man, which he would later direct. He's the author of a science fiction novel, Reflecting Fires, and a sadly neglected blog, Lot 49. His iPhone game, Blocfall, is available through the iTunes App Store. His wife is a talented jazz singer; he does not sing, which is for the best.

Keep up with the latest cybersecurity threats, newly discovered vulnerabilities, data breach information, and emerging trends. Delivered daily or weekly right to your email inbox.

You May Also Like


More Insights