It’s the End of the World as We Know It (And I Feel Fine)
The end of Dennard scaling and the imminent end of semiconductor feature scaling means that software systems and applications will no longer benefit from 40% per annum performance increases, a continually rising tide that lifted all boats. Future software developers will work harder to find the capability to support productive, high-level programming languages; richer, more natural models of human-computer interactions; and new, compute-intensive applications. This talk focuses on what software can do to find the performance headroom that we need. The solutions to this problem are more diverse and challenging than our previous path, and do not offer 40 years of uninterrupted progress. Some of these improvements are the performance engineering discipline that has only been necessary in cutting-edge systems, while others are opportunities to change the way in which software is developed. The new emphasis on performance, monitoring, adaptation and new ways of developing software should also lead the hardware and architecture communities to revisit the long-standing debate on the hardware-software interface.