GPUs and Multicore CPUs

For the next year or two the biggest software battleground among major interface vendors like Adobe, Apple, Autodesk, Google, Microsoft, Mozilla, Opera, and others will be over a)who takes advantage of all the underutilized GPU and extra core CPU power available on PCs especially but also cameras, mobiles, tablets, etc. For example, in todays announcement of the IE9 Preview Microsoft’s Dean Hachamovich emphasized not just embracing SVG in HTML 5 but how IE9 would take advantage of available hardware:

Among them: background JavaScript compiling on a separate processor core, graphics processor acceleration of text and graphic rendering, and an upcoming update to the IE9 preview for hardware acceleration of HTML 5 video.

Apple is doing GPU accelerated video. Ditto for Adobe on Flash Player and video both. Google is investigating general computational speed up using spare GPU cycles. Mozilla and Opera are looking for multicore and GPU speedups for their browsers.

It certainly makes sense – why leave all those CPU and GPU cycles go to waste? And many developers are not able to take advantage of those resources since the programming can be quite complex and subject to race conditions/ reliability problems. Intel and Google both have been looking at software to make multicore and GPU utilization more amenable. And the latest compact cameras from Casio, Canon, Panasonic and others are doing the same – adding new features based on taking advantage of surplus cycles or multicore image processors. So its not a stretch to say that the winning gadgets, electronic devices and tablet PCs will be the ones that have software that cleverly utilize this otherwise untapped vein of computing power.