David Patterson writes in this month’s IEEE Spectrum about the shift to multicore; a move that he characterizes as a Hail Mary pass that we don’t yet know will be caught
Thirty years later, the semiconductor industry threw the equivalent of a Hail Mary pass when it switched from making microprocessors run faster to putting more of them on a chip—doing so without any clear notion of how such devices would in general be programmed. The hope is that someone will be able to figure out how to do that, but at the moment, the ball is still in the air.
Patterson looks into the past at a full slate of dead companies that tried, and failed, to build a new business helping their customers parallelize their applications
When the president and CEO of Intel, Paul S. Otellini, announced in 2004 that his company would dedicate “all of our future product designs to multicore environments,” why did he label this “a key inflection point for the industry”? The answer is clear to anyone familiar with the many now-defunct companies that bet their futures on the transition from single-core computers to systems with multiple processors working in parallel. Ardent, Convex, Encore, Floating Point Systems, Inmos, Kendall Square Research, MasPar, nCUBE, Sequent, Tandem, and Thinking Machines are just the most prominent names from a very long list of long-gone parallel hopefuls. Otellini was announcing that despite this sobering record, software applications in the future will run faster only if programmers can write parallel programs for the kinds of multicore microprocessors that Intel and other semiconductor companies have started shipping.
His article goes on to repeat what has been said many times, yet is still not universally accepted: parallel programming is harder than sequential programming, and we shouldn’t expect a silver bullet.