Software Developers Must Learn How to Use Heterogeneous Multi-Core or Extinct - Analyst

Heterogeneous Processing and Cloud Computing May Change the Landscape of Software Market

by Anton Shilov
11/03/2010 | 10:49 PM

The ongoing changes on the market of software and computing have enough power to tangibly change the market of software. Programmers have to learn how to efficiently use heterogeneous multi-core computers and eventually processors. According to a well known industry analyst, either software exploits the benefits of massively parallel architectures, or it extinct in the long term.


For many years software gained performance along with clock-speed gains of microprocessors. As a result, programmers could keep old code for decades and only optimize it once central processing units (CPUs) obtained certain new instructions or extensions. However, in the recent years leading developers of processors ceased to increase clock-speeds and started to increase the amount of cores. Meanwhile, graphics processors obtained additional flexibility and now can process a number of applications requiring massively parallel performance. Moreover, eventually x86 cores and stream cores of GPUs will be integrated onto the same chip and in order to get maximum performance from such hardware programmers will have to learn how to exploit performance from heterogeneous multi-core chips.

"Unless the ISVs learn how to take advantage of the power of the multiple processors they will be stuck in time and watch new, smaller, more agile companies who will learn the structures, develop the compliers, and run faster smarter code," said Jon Peddie, the head of Jon Peddie Research market tracking firm, in a column.

According to Mr. Peddie, consolidation between software giants is unlikely to help them much going further as market conditions remain generally the same, consumers still need software and are eager to pay for it, only the methods of software development are changing. In the longer term consumers will adopt cloud services instead of certain programs, but it does not look like the market of retail software will erode.

"New applications making use of multi-threading and parallel processing will be incomprehensible to the armies of programmers struggling bravely under the misguided short term bottom line bonus fed managers in the software companies. And after wandering through the decades of undocumented and bloated spaghetti code the new parallel architectures will be totally inconceivable to those heroic programmers," said Mr. Peddie.

But not everything is that behind the hardware-lead trend towards parallel and heterogeneous processing. A lot of applications now take advantage of graphics processing units and their number will only increase over time. Of course, it will take years to re-develop large commercial applications, but their creators hardly have a lot to worry about: smaller companies will not be able to address massive projects anyway.