Saturday, 1 January 2011

Multicore Predictions for 2011 and the next ten years



PART 1- BACK TO THE BEGINING

Here we stand at the beginning of a New Year and the beginning of a new decade too - at least according to some reckonings (no, I don't want to argue that one here). So it seems appropriate to look not just at what the year might bring (the usual "predictions") and to look further ahead towards the end of the decade - or at least the end of 2020 -  and see what might be coming towards us.

All predictions are made upon assumptions and this market and IT in general is renowned for coming from left field and knocking your assumptions flying.  Itis, after all, part of what has made it what it is. However with that caveat I will make the attempt anyway.

Because of the wide range of topics, this is going to be the first of a number of pieces which will cover hardware, software and applications. It will be somewhat of a journey and starts, as journeys should, at the beginning, in this case with an assessment of where we are now.

In the beginning...
Let's begin by looking back. The rate of growth of computer technology has been astounding since the introduction of microprocessors in the late 1960s/early 1970s. At the time, and for many years thereafter, for most of the world computers were things that were simply for geeks.

With the introduction of the first PCs (by whoever you choose to nominate), the rapid growth in speed and capability of processors and memory; the deployment of commercial applications reaching ever-broader communities including commerce; and the widespread adoption of embedded systems, this view ceased to be widely held. By the begining of the current century demands for performance, driven by a quasi-symbiotic relationship between hardware manufacturers, applications writers and end users, had grown to such an extent that the power consumption of PCs, servers, laptops and embedded systems was going through the roof.

This heralded the development of multicore processors for reasons that I have described here and elsewhere many times over and shan't repeat now. As far as the broad mass of the public is concerned the first multicore processors appeared towards the middle of the decade and are now near-universal. In servers and higher performance systems (even some PCs) quad-core systems are now becoming more and more common. Intel and others continue to push the envelope outwards with higher counts, but there remains little consistency among them in the route forward. I will return to this in a later part of this blog.

The world at large tends to forget that the embedded industry had been using multicores for a long time. The development path of the embedded industry has been seperate from, but complementary to and many times larger than, what the majority of people perceive as the mainstream IT industry. For embedded applications such as DSP, the only realistic route for a long time was custom hardware, which with the arrival of the micrporocessor meant ASICs. As a result, architectures such as systolic arrays and others had been in widespread use for many years by the turn of the current century. I myself have to admit to having sketched a quad-core design for an embedded image processing engine back in the late 1980s, based upon the Inmos's transputer. Such approaches spread rapidly to other domains as technology spread, latterly boosted by the widespread adoption of mobile telephony, particularly in emerging markets. Embedded systems have in large part always been tailored for low-power consumption for fairly obvious reasons.

This then represents the present state of play. In effect when the "mainstream" market needed to conserve energy it went to the embedded market for inspiration. This has led to the widespread deployment of quadcore processors in all sectors and the availability of larger numbers of cores in certain more specialised procesors. The market is yet young though and is ripe for development. It is also one that will not stand still and it is extremely unlikely that it will ever return to the simple growth that we saw in the period 1970 - 2005.

Software in the early days was simple, and had nothing like the sophistication that we have come to expect of it nowadays, whether OS or application. Of course in the very early days the boundary was often somewhat blurred. With the rise of the application has come an escalation in the sophistication and complexity of the operating system required to manage all the various demands of the hardware, applications and the rest. The days of CPM and MS-DOS are long behind us. Microsoft has come to de facto dominance of both markets, yet Linux and its variants are ignored at peril. Many embedded systems are Linux-based. Where that may run from engine management to datacentres and network switching and massive storage engines, that is a lot of systems. Yet in large part we would not have the IT world in which we live and work without MS. It has driven the development of a large and hugely influential part of the industry. 

Apple, the other great survivor from the early days, has reinvented itself yet again and provided us with a whole class of applications on mobile phones that MS has been unable to address satisfactorily. Then along have come the likes of Google who seek to change the way we deal with almost any form of data. Then there are the vendors such as Amazon who barely existed a decade ago. Software has indeed changed.
I will take this as the current state of play. In the pieces that follow I will look forward to what we might reasonably expect from multicore ihardware, software and apps both in the next year and over the next ten years.

...And One Prediction (in this part)

However:

Prediction

Multicore processors, software and applications are established and will continue in an overall trend of upward growth.

For anything else to be the case would imply a very serious about-turn on the part of all major vendors and would only arise as the outcome of a radical and disruptive change in technologies.

This does not mean to say that individual companies may not see localised reverses, but it does reflect the fact that our society is  almost irrevocably wedded to technology in general and as a result to multicore  as a vehicle to deliver the growing sophistication of applications that users demand.

No comments:

Post a Comment

Welcome to The Multicore Blog. Please add your comment. Remember it will be moderated.