Henry Hoffmann is an Associate Professor in the Department of Computer Science at the University of Chicago. He received the President’s Aware for Early Career Scientists and Engineers (PECASE) in 2019. He was granted early tenure in 2018. He is a member of the ASPLOS Hall of Fame. At Chicago he leads the Self-aware computing group (or SEEC project) and conducts research on adaptive techniques for power, energy, accuracy, and performance management in computing systems. He received the DOE Early Career Award in 2015. He has spent the last 18 years working on multicore architectures and system software in both academia and industry.
He completed a PhD in Electrical Engineering and Computer Science at MIT where his research on self-aware computing was named one of ten “World Changing Ideas” by Scientific American in December 2011. He received his SM degree in Electrical Engineering and Computer Science from MIT in 2003. As a Masters student he worked on MIT’s Raw processor, one of the first multicores.
Along with other members of the Raw team, he spent several years at Tilera Corporation, a startup which commercialized the Raw architecture and created one of the first manycores (Tilera was sold for $130M in 2014). His implementation of the BDTI Communications Benchmark (OFDM) on Tilera’s 64-core TILE64 processor still has the highest certified performance of any programmable processor.
In 1999, he received his BS in Mathematical Sciences with highest honors and highest distinction from UNC Chapel Hill.
Focus Areas: Self-aware & Adaptive Computing, Computer Systems, Computer Architecture, Embedded Systems
Modern computer systems have to meet goals in multiple — often competing — dimensions; e.g., high performance and low energy consumption. This creates a great burden on programmers who must be experts in both their application domain and in the myriad system issues that affect goals like power, energy, reliability, performance, and more. To alleviate this burden, I study ways to build self-aware computing systems that understand high-level goals and automatically adapt their behavior to meet those goals optimally. This is interdisciplinary work covering traditional areas, like operating systems and computer architecture, as well as new areas, like control theory and machine learning applied to computer system management and optimization.