Researchers Bring Threading to Word Processing
NC State researchers figured out a way to separate memory management from common software processing, finally enabling multi-core support.
Researchers from NC State University have discovered a way to break up programs such as web browsers and word processors so that they can use multiple threads. While this ability is already in use with PC games and many other applications, some common programs still dump the entire process operation onto one core despite current multi-core CPUs now available on the market.
According to the researchers, breaking up the more traditional programs into multiple threads means a possible overall 20-percent increase in performance. From an enterprise standpoint, this is good news, allowing workers to be more productive, saving time and money. Unfortunately, the current solution for "hard-to-parallelize" programs isn't merely a simple fix, nor is it readily available.
So what exactly is the solution? "We’ve removed the memory-management step from the process, running it as a separate thread," said Dr. Yan Solihin, an associate professor of electrical and computer engineering at NC State, director of the research project (and co-author of a paper describing the research).
Typically a program will perform a computation, then perform a memory-management function, and then repeat the process via one processor core. Using the new approach, the computation thread and memory-management thread are executing simultaneously (in parallel), allowing the program to run more efficiently. Most of today's consumer apps don't utilize multi-core CPUs effectively, but that may change down the line thanks to new programming and compiler technologies such as this one.
"This also opens the door to development of new memory-management functions that could identify anomalies in program behavior, or perform additional security checks," Solihin said. "Previously, these functions would have been unduly time-consuming, slowing down the speed of the overall program."
Solihin and the group of NC State researchers plan to present their findings in a paper called "MMT: Exploiting Fine-Grained Parallelism in Dynamic Memory Management," slated to be presented on April 21 at the IEEE International Parallel and Distributed Processing Symposium in Atlanta.
This sounds like a George Takei moment: "Oh my!"
"Experience Dual-core-utilizing word processing and power point presenter software" Boost your productivity by up to 20%! New low price for limited time only, $799.
OpenOffice dual-core-utilizing: $0
"Experience Dual-core-utilizing word processing and power point presenter software" Boost your productivity by up to 20%! New low price for limited time only, $799.
OpenOffice dual-core-utilizing: $0
MIT huh? Big deal.
I sided with Shatner!!!
Maybe they are talking about Open Office or something?
Maybe they are talking about Open Office or something?
MS Office is already multithreaded. Oh and btw the "M$" makes you look like you're stuck in the 90s.
Looks like someone couldn't think up anything original to go for a PHD with.
This isn't about Windows.
are they running on separate cores too? The article said that all the stuff gets dumped on one core too that's why I asked.
If they are just talking about defragging and garbage collection, the compiler should already thread that out separately. Its not the programmers fault if the compiler injects memory management code right in the middle of their execution.
Oh brother, that's whats wrong with computer programming today, too many kids growing up on Java. Believe it or not, some mission-critical applications can't just leave it up to the compiler to figure out what to do with memory. Not that Word processors are ever mission critical, I'm just saying proper memory management and being aware of the effects of your memory usage are still good ideas.
The same reason we now use EFI instead of carburetors. It's just another step forward, and walking requires following one foot after the other. It may lead to something else even better.