Funded by NSF, DOE/NNSA, and AFOSR
Scientific Computing: Hybrid multi-core processors (HMPs) – processors consisting of multiple cores and Graphical Processing Units (GPUs) – are dominating the landscape of the current generation of computing, from desktops to extreme-scale systems. Much of the previous work in exploiting these architectures was on applications with a static structure, and array structures with no consideration to energy requirements. My work demonstrated that for a variety of applications with dynamic computational structure and sparse data sets (compressible turbulence, synthetic aperture radar, and sparse matrix factorization), efficient parallelization can be achieved, and software can be developed that provide performance/energy tradeoffs. The latter is an important issue both for battery powered appliances and exascale supercomputers. This work made several important contributions in real-time scheduling of irregular and hierarchical structures, intelligent task-to-core mapping, energy-aware task scheduling, dynamic voltage scaling and parallelization to millions of cores. Besides making the applications run faster, my work directly impacts climate change and energy efficiency as computers today use 10+% of the total power consumption.