Concepedia

Publication | Closed Access

Qilin

509

Citations

25

References

2009

Year

TLDR

Heterogeneous multiprocessors are increasingly important for high performance and energy efficiency, yet current mapping of computations to processing elements is largely manual, labor‑intensive, and inflexible to runtime changes. The study proposes adaptive mapping, a fully automatic technique for assigning computations to CPU and GPU resources. This technique is implemented in the experimental heterogeneous programming system Qilin. Experimental results show that adaptive mapping reduces execution time by 25 % and energy consumption by 20 % compared to static mappings, while also adapting to changes in problem size and system configuration.

Abstract

Heterogeneous multiprocessors are increasingly 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/software configurations. In this study, we propose adaptive mapping, a fully automatic technique to map computations to processing elements on a CPU+GPU machine. We have implemented it in our experimental heterogeneous programming system called Qilin. Our results show that, by judiciously distributing works over the CPU and GPU, automatic adaptive mapping achieves a 25% reduction in execution time and a 20% reduction in energy consumption than static mappings on average for a set of important computation benchmarks. We also demonstrate that our technique is able to adapt to changes in the input problem size and system configuration.

References

YearCitations

Page 1