Approximate Computing

The high-performance computing systems available today are far from meeting the performance and energy efficiency targets necessary to satisfy the needs of future computing systems.  With processor clock frequencies leveling-off over the past several years, the only way to achieve the expected levels of performance within the same physical size and the same or lower energy requirements is to have more processors computing in parallel.  However, increasing concurrency among the processors increases interprocessor communication, which then becomes the critical bottleneck.   With increases in the number of processors actually computing, the energy devoted to communication becomes even more prominent due to more frequent data transfers to access data on remote processors.

This work is studying new methods for reducing energy consumption and improving performance in large-scale systems by communicating, computing, and storing data only approximately.  For instance, we are examining how data to be transferred can be compressed, and possibly discarded, how communication and synchronization can be avoided or relaxed, and how data can be stored and retrived approximately, all while maintaining an acceptable level of output quality for the specific application.

Selected papers

  • Qianqian Fan, Sachin Sapatnekar, and David J. Lilja, "Cost-Quality Trade-offs of Approximate Memory Repair Mechanisms for Image Data," International Symposium on Quality Electronic Design (ISQED), March, 2017.
  • J. M. Myre, E. Frahm, David J. Lilja, and M. Saar, "TNT-NN: A Fast Active Set Method for Solving Large Non-Negative Least Squares Problems, International Workshop on Advances in High-Performance Computational Earth Sciences (IHPCES), June, 2017.