News

Software Research Promises Faster Apps

Thomas Claburn
Editor-at-Large

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

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)."


More Security Insights

Webcasts

More >>

White Papers

More >>

Reports

More >>

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.

InformationWeek has published a report on virtualization management. Download the report here (registration required).

Related Reading


Informationweek Discussions

Start the Discussion


InformationWeek encourages readers to engage in spirited, healthy debate, including taking us to task. However, InformationWeek moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing/SPAM. InformationWeek further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.
Subscribe to RSS

Resource Links