Programmability Analysis of Image Processing Kernels on Multi-/Many-core Platforms
In the last few years, the computing industry has changed its course from ever higher clock speeds to multi- and many-core systems. These new parallel systems suffer a “programmability gap”: there is a large gap between the performance a platform is theoretically capable of, and what the programmer is able to achieve. Early programming models were very closely tied to the underlying hardware. A proliferation of programming models has lead to a push for standardisation. This standard became OpenCL. In this thesis we investigated how the programmability of many-core systems has evolved in the past years. We started with the hardware-centric Cell SDK and compared it to the new standard OpenCL. We compared programmability on performance, portability and productivity. We found that OpenCL is a major improvement in portability and productivity, but that performance is still lacking. |

