Performance and Energy Efficiency of CUDA and OpenCL for GPU Computing using Python
Peer reviewed, Journal article
Published version
Permanent lenke
https://hdl.handle.net/11250/3084583Utgivelsesdato
2020Metadata
Vis full innførselSamlinger
- Publikasjoner fra CRIStin - SINTEF AS [5801]
- SINTEF Digital [2501]
Sammendrag
In this work, we examine the performance, energy efficiency, and usability when using
Python for developing high-performance computing codes running on the graphics processing unit
(GPU). We investigate the portability of performance and energy efficiency between Compute Unified
Device Architecture (CUDA) and Open Compute Language (OpenCL); between GPU generations;
and between low-end, mid-range, and high-end GPUs. Our findings showed that the impact of using
Python is negligible for our applications, and furthermore, CUDA and OpenCL applications tuned to
an equivalent level can in many cases obtain the same computational performance. Our experiments
showed that performance in general varies more between different GPUs than between using CUDA
and OpenCL. We also show that tuning for performance is a good way of tuning for energy efficiency,
but that specific tuning is needed to obtain optimal energy efficiency