Philip Heinisch, Katharina Ostaszewski, and I have published our new paper Towards Green Computing: A Survey of Performance and Energy Efficiency of Different Platforms using OpenCL on arXiv.
When considering different hardware platforms, not just the time-to-solution can be of importance but also the energy necessary to reach it. This is not only the case with battery powered and mobile devices but also with high-performance parallel cluster systems due to financial and practical limits on power consumption and cooling. Recent developments in hard- and software have given programmers the ability to run the same code on a range of different devices giving rise to the concept of heterogeneous computing. Many of these devices are optimized for certain types of applications. To showcase the differences and give a basic outlook on the applicability of different architectures for specific problems, the cross-platform OpenCL framework was used to compare both time- and energy-to-solution. A large set of devices ranging from ARM processors to server CPUs and consumer and enterprise level GPUs has been used with different benchmarking testcases taken from applied research applications. While the results show the overall advantages of GPUs in terms of both runtime and energy efficiency compared to CPUs, ARM devices show potential for certain applications in massively parallel systems. This study also highlights how OpenCL enables the use of the same codebase on many different systems and hardware platforms without specific code adaptations.