Dynamic translation of runtime environments for heterogeneous computing
Rodrigo Domínguez · 2013
The recent move toward heterogeneous computer architectures calls for a global rethinking of current software and hardware paradigms. Researchers are exploring new parallel programming models, advanced compiler designs, and novel resource management techniques to exploit the features of many-core processor architectures. Graphics Processing Units (GPUs) have become the platform of choice in this area for accelerating a large range of data-parallel and task-parallel applications. The rapid adoption of GPU computing has been greatly aided by the introduction of high-level programming environments such as CUDA C and OpenCL. However, each vendor implements these programming models differently and we must analyze the internals in order to get a better understanding of the performance results.