Multicore Boom Needs New Developer Skills
"I think it stems primarily from the collegiate level," Lydon said. "I've heard very little about colleges teaching multithreaded programming, but I would think and hope that it's changing very quickly."
However, Forrester's report suggests the urgency isn't being felt across the board. It notes that major operating systems and most middleware products are already prepared for multithreaded operation and for "near term" multicore processors, and that corporate development shops may look to ISVs (independent software vendors) to solve the problem through development tools and platforms that can better handle multicore-related tasks.
But Microsoft's Reed believes that multithreading over time will become "part of the skill set of every professional software developer."
In the meantime, most of the parallel computing resources available now don't necessarily hide the complexity of coding for multiple threads. "Development pros have options today, but most of them are low-level language extensions and libraries," Forrester said.
For example, in February AMD open-sourced more than 3,200 software routines under a project called Framewave, which it said will help coders build multithreaded applications for x86-type processors.
"Libraries can't provide a complete answer, but we see these as iterative steps," said Margaret Lewis, director of commercial solutions and software strategy at AMD. "There's things that you can do today as you're waiting for those [more advanced] tools that can increase the multi-threadedness of your applications," she said.
There are some higher-level products already on the market, such as the platform sold by RapidMind, which takes single-threaded C++ code and then, through an abstraction layer, "parallelizes" it across a number of cores.
However, it would be "fairly idealistic" to think that better tools alone will be enough, Lydon argued. "When you actually get into the points in code where you're going to leverage performance by spawning multiple threads, it takes a human mind to see where the benefits could take place."



