Georgia Institute of Technology
Heterogeneous multiprocessors are growingly important in the multi-core era due to their potential for high performance and energy efficiency. In order for software to fully realize this potential, the step that maps computations to processing elements must be as automated as possible. However, the state-of-the-art approach is to rely on the programmer to specify this mapping manually and statically. This approach is not only labor intensive but also not adaptable to changes in runtime environments like problem sizes and hardware configurations. In this paper, the authors propose adaptive mapping, a fully automatic technique to map computations to processing elements on heterogeneous multiprocessors. They have implemented it in their experimental heterogeneous programming system called Qilin.