Heterogeneous computing and the new digital revolution
Computer industry is approaching a formidable obstacle course where anyone wishing to drive advances in computing technology must carefully negotiate several segments of computing. Consumers want improved battery life, size, and weight for their laptops, tablets, and smartphones. Likewise, data center power demands and cooling costs continue to rise. At the same time, we constantly demand rise in performance to enable compelling new user experiences. We want to access our devices through more natural interfaces (speech and gesture), and we also want these devices to manage the everexpanding volumes of data (home movies, pictures, and a world of content available in the cloud).
To deliver such new user experiences, programmer productivity is another essential element that must be delivered. It needs to be simple and easy for software developers to tap into new capabilities through powerful, familiar programming models. It is increasingly important that software be supported across a broad spectrum of devices. Developers cannot sustain today’s trend of re-writing code for an ever expanding number of different platforms. To navigate this complicated set of requirements, the computer industry needs to adopt a unique, a more efficient approach to computer architecture. An approach that delivers improvement across all
4 of these vectors: programmability, power, performance, and portability.