Quantcast
Channel: Build Your Career Blog » admin
Viewing all articles
Browse latest Browse all 9

Multicore Programming is Harder than it Looks

$
0
0

Hummel became interested in high-performance computing in 1990 while attending University of California Irvine, where he earned his doctorate. “It’s fun to be able to teach what you have studied,” he said.

Multicore processors have been waiting in the wings for years, ready to leap on stage and lead the computing world to faster processing times and increased performance without all that worry about heat. But what’s been preventing this new era of computing from being fully realized is an adequate supply of software developers with training and expertise on parallel processing.

The main problem is that writing parallel programs is difficult—considerably more complicated than writing sequential programs. Compounding that is the lack of foundational knowledge about available tools and processes and how to use them.

“The hardware is advancing, but software hasn’t kept up,” said Joe Hummel, who taught a recent three-day IEEE Computer Society class in parallel processing.  “The crux of the problem is it’s important for a growing minority of people to know about this. But it’s hard to create that software.”

It’s a challenge for developers to find and assemble all the information and tools they need write software for multicore. Hummel said few universities offer classes in parallel processing because institutions are still trying to figure out how it fits into the curriculum. And some of those who do teach it can be “behind the times.”

Hummel, who writes a blog about high-performance computing, became interested in high-performance computing in 1990 while attending University of California Irvine, where he graduated with a doctorate in 1997 and still teaches part-time. “It’s fun to be able to teach what you have studied,” he said.

His IEEE Computer Society course addresses the challenges of multicore programming, beginning with a look at dual-core IA programming, compiler switches, MKL, thread checkers, and profilers, then moving onto programming with Windows, POSIX, Open MP, virtualization, and multicore software architecture and debugging. Day three is dedicated to migration case studies, threaded programming methodologies, and the scalability of threaded applications.

Students in Hummel’s class said their companies are interested in building a knowledge base in parallel programming. Computer engineering graduate Anthony Dotterer said people at the defense contractor where he works are expecting he will emerge from the class “as a master” of parallel processing. Ben Boronow, vice president of research and development at Operation Technology Inc., said his company sent four people to the class to learn more about the subject. During the class, they were working on a project for the company, using what they were in the process of learning.

“If you need to come up to speed on parallel processing, this is a great class—it’s very detailed, with examples of things that work, and case studies. I’ve been extremely pleased,” Boronov said.

His task was to collect information to convey to programmers back at the office. Since his specialty is user interfaces, Boronov didn’t have any direct application for his newfound parallel processing knowledge, other than that. “But it’s still really interesting,” he said.

Dotterer, meanwhile, was already applying his knowledge even as the class was underway. He used the virtual machine he brought with him to test some algorithms and place high-level programs so he could compare their performances. Besides enriching his knowledge base for his consulting job, Dotterer also plans to use what he learned on the thesis for his master’s degree in computer science.

“I think I learned a lot,” he said. “One of the things I learned the most about was how much working with your cache can affect the performance of your system. A big light bulb went on. But you’re never finished learning about this.”


Viewing all articles
Browse latest Browse all 9

Latest Images

Trending Articles





Latest Images