Abstract
In the recent years GPGPU and heterogeneous computing become more and more popular. One of the popular case is OpenCL. OpenCL 2.0 brings many features that can reduce overhead while writing OpenCL programs. For example: Shared Virtual Memory, Dynamic Parallelism, Pipes. These enhance the interaction between host and devices. And HSA foundation released a new architecture name Heterogeneous System Architecture (HSA). HSA integrates CPU and GPU into one chip try to reduce the overhead of communication between CPU and GPU or other acceralators, improve the energy-efficiency of heterogeneous system. In this thesis we accomplish a full time system HSAemu 2.0 which supports most OpenCL 2.0 features. We will introduce the OpenCL 2.0 runtime and HSA runtime v1.0. And give an overview how we integrates OpenCL runtime and HSA runtime together to meet the requirements. Finally we use OpenCL benchmarks in AMD APP SDK 3.0 Beta to verify the OpenCL 2.0 features.