Until recently, Moore’s law and Dennard circuit scaling continually reduced the cost and energy usage of computations, enabling the construction of progressively larger and more sophisticated computing platforms. However, after sixty years of rapid advancement, the computing revolution is confronting hurdles to continued scaling including fundamental physical limits due to the nanoscales at which computing substrates are fabricated and the increasing complexity of ambitious application platforms such as atmospheric modeling, media-oriented operating systems, deep space satellite probes, UAVs, and cyber-physical systems. Continued scaling of size, speed, and sophistication of computing systems hinges on achieving significant and novel breakthroughs in system design and implementation.
A promising strategy for overcoming looming resource limits is to rethink current technology design methodologies to emphasize techniques for efficient resource utilization. This may require renegotiating the relationship between the application and the computing platform. For example, we can gain orders of magnitude in power, speed, and potentially area efficiency using systems that operate at the margins of circuit stability. The principles underlying advances in scaling the size, speed, and complexity through more efficient resource utilization are also applicable to the development of more resilient applications that cope with unforeseen dynamic alterations in available resources including energy and input data quality.