Hridesh Rajan, an Associate Professor of Computer Science at Iowa State University, was awarded a grant by the US National Science Foundation to improve multicore programming. This award is for a total of $400,000 over three years.
This project focuses on the problem of making it easier to program performance-asymmetric multicore processors (AMP). A multicore processor is called performance-asymmetric when its constituent cores may have different characteristics such as frequency, functional units, etc. High-performance Computing (HPC) community has demonstrated significant interest in the AMPs as they are shown to provide nice trade-off between the performance and power. On the other hand, asymmetry makes programming these platforms hard. The programmers targeting these hardware platforms must ensure that tasks of a software system are well matched with the characteristics of the processor intended to run it. To make matters even more complicated, a wide range of AMPs exist in practice with varying configurations. To efficiently utilize such platforms, the programmer must account for their asymmetry and optimize their software for each configuration. This manual, costly, tedious, and error prone process significantly complicates software engineering for AMP platforms and leads to version maintenance nightmare.
To approach this problem, this project is developing a novel program analysis technique, phase-based tuning. Phase-based tuning adapts an application to effectively utilize performance asymmetric multicores.
Main goals are to create a technique that can be deployed without changes in the compiler or operating system, does not require significant inputs from programmer, and is largely independent of the performance-asymmetry of the target processor. The broader impacts are to help realize the potential of emerging AMPs and other novel extreme-scale computing architectures, which in turn will enable researchers in the scientific disciplines to analyze, model, simulate, and predict complex phenomena important to society.
Rajan received his PhD from the University of Virginia before joining the ISU Department of Computer Science in 2005. He directs the laboratory for software design at ISU, which conducts research in programming languages and compilers. is the lead student on this project.
PhD student Tyler Sondag is the lead student on this project. Tyler received his M.S. degree from Iowa State University in Fall 2009 and a B.S. degree from McKendree College in Spring 2007. His research interests are in program analysis and optimization.