Abstract.A heterogeneous computing platform is an computing system that composed of different types of computing units. By fully using the computing ability of different types of computing units, the heterogeneous computing platform can achieve better performance and power efficiency than traditional homogeneous computing platform. In this paper, we firstly summarize and analyze the key factors that affect the performance of a heterogeneous computing platform. Next, we conduct a specific survey about these key factors from both software and hardware aspects and introduce some research results and key technologies at present. And then, we introduce the heterogeneous computing framework and make a comparison between OpenCL and HSA which are now both promising. At last, we analyze the future directions of the heterogeneous computing platform.