by Arthur Cole
In processor circles, they’re calling it the end of Moore’s law: Clock speed is out and multicore is in. But like any transitional moment in technology, the rise of multicores has led to what I call the earthworm effect, that is, a rapid burst forward and then a lull as the rest of the worm catches up.
Many of you probably see the same thing on your commute to work. In the case of multicores, the rest of the worm is the software industry, which is still trying to reorient itself to a multithreaded universe in which a single application has to deal effectively with data coming in and going out along several paths at once. It’s not an easy thing to do, but since multicore technology is now several years old, you’d think the developer community would have come up with something by now. What gives?



1 response so far ↓
1 David Maples // Jul 11, 2009 at 3:10 pm
Arthur makes very good points - the real challenge is making it easy an intuitive for the average developer to parallelize and thread their applications. Tools like Allinea DDT, Allinea DDTLite and Allinea OPT definitely assist the developers debug and optimize Unix, Linux and Windows applications.(www.allinea.com)
This is great, however, we are really talking about a re-education and knowledge update of developers with very well established past practicies and old tools. In my view, industry needs to provide more complete tools suites addressing the complete developement life cycle, including compilers, debuggers, optimization tools, performance analyzers, plus tools to recommend / lead the developer in parallelizing code. There are point tools offering some help in specific areas of the development cycle, but the decision and choices are left to the developers. Picking and chosing the best combination of tools takes significant reserach, work and time.
What commercial developer has time? They code for income. This is a new group of individuals with a focus on production - not research.
We need to bring the tools required for a complete design, develop, code, test and support environment, recommendation to developers - along with training and easy access coaching.
Everyone agrees this is a major shift, but few are addressing it from the developers viewpoint and recommending a complete solution that will work together.
I know many will argue, their tools or product will “do it all” and we appreciate this, however, I have yet to see a parallel / threaded development suite taking the world by storm - so I guess we still have work to do.
Multicore is here to stay - developers need help with the transition as well as a new generation of tools.
Dave Maples
Allinea Software Inc
408 884 0282
dmaples@allinea.com