Intel wants developers to think parallel

10.03.2009
Software developers were exhorted to "think parallel" Tuesday by an Intel official who stressed a changing paradigm in which applications accommodate many CPU cores.

Speaking during a keynote presentation at the SD West 2009 conference in Santa Clara, Calif., James Reinders, director and chief evangelist for Intel software development products, emphasized the budding trend of parallelism and noted the company's tools products in this space.

[ Related: . ]

"One of the phrases I've used in some talks is it's time for us as software developers to really figure out how to think parallel," Reinders said. Designing parallel programs is becoming fundamental to the programmer's job and those who do not figure it out will have a limited career path, he said.

Intel, he said, is in its fifth year of shipping and will ship a many-core processor this year. "While we're still wrestling with how do I use two, four, eight cores, we're going to throw into the mix a processor with dozens of cores," said Reinders. He defined processors with more than 16 or 32 cores as many-core processors and added that these require different design techniques.

Referring to an article he had published in 2007, Reinders cited eight rules for parallelism: think parallel; program using abstraction; program tasks, not threads; design with the option to turn off concurrency; avoid locks when possible; use tools and libraries designed to help with concurrency, use scalable memory; and design to scale through increased workloads.