There exist various different high- and low-level approaches for GPU programming. These include the newer directive based OpenACC programming model, Nvidia’s programming platform CUDA and existing libraries like cuSPARSE with a fixed functionality. This work compares the attained performance and development effort of different approaches based on the example of implementing the SpMV operation, which is an important and performance critical building block in many application fields. We show that the main differences in development effort using CUDA and OpenACC are related to the memory management and the thread mapping
GPUs, Graphics Processing Units, offer a large amount of processing power by providing a platform fo...
OpenACC has been touted as a "high productivity" API designed to make GPGPU programming accessible t...
GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GP...
Sparse matrix-vector multiplication (SpMV) is a key operation in scientific computing and engineerin...
Graphics processing units and similar accelerators have been intensively used in general purpose com...
Graphics Processing Units (GPU) have been widely adopted to accelerate the execution of HPC workload...
In the field of high performance computing, GPUs play an important role. However, in order to be abl...
General-Purpose Graphics Processing Units (GPGPUs) are promising parallel platforms for high perform...
GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GP...
The proliferation of accelerators in modern clusters makes efficient coprocessor programming a key r...
General-purpose graphics processing units (GPGPUs) provide inexpensive, high performance platforms f...
OpenACC is a directive-based programming model for highly parallel systems, which allows for automat...
OpenACC is a directive-based programming model for highly parallel systems, which allows for automat...
A major shift in technology from maximizing single-core performance to integrating multiple cores ha...
This paper presents a performance comparison between CUDA and OpenACC. The performance analysis focu...
GPUs, Graphics Processing Units, offer a large amount of processing power by providing a platform fo...
OpenACC has been touted as a "high productivity" API designed to make GPGPU programming accessible t...
GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GP...
Sparse matrix-vector multiplication (SpMV) is a key operation in scientific computing and engineerin...
Graphics processing units and similar accelerators have been intensively used in general purpose com...
Graphics Processing Units (GPU) have been widely adopted to accelerate the execution of HPC workload...
In the field of high performance computing, GPUs play an important role. However, in order to be abl...
General-Purpose Graphics Processing Units (GPGPUs) are promising parallel platforms for high perform...
GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GP...
The proliferation of accelerators in modern clusters makes efficient coprocessor programming a key r...
General-purpose graphics processing units (GPGPUs) provide inexpensive, high performance platforms f...
OpenACC is a directive-based programming model for highly parallel systems, which allows for automat...
OpenACC is a directive-based programming model for highly parallel systems, which allows for automat...
A major shift in technology from maximizing single-core performance to integrating multiple cores ha...
This paper presents a performance comparison between CUDA and OpenACC. The performance analysis focu...
GPUs, Graphics Processing Units, offer a large amount of processing power by providing a platform fo...
OpenACC has been touted as a "high productivity" API designed to make GPGPU programming accessible t...
GPU-accelerated computing drives current scientific research. Writing fast numeric algorithms for GP...