mlsanityData to 14 Oct 2026

Tuning and optimization for a variety of many-core architectures without changing a single line of implementation code using the Alpaka library

arXiv 1706.10086 ↗First posted 30 Jun 2017cs.DCcited by 1

Not on the map. Why?

Abstract (arXiv)

We present an analysis on optimizing performance of a single C++11 source code using the Alpaka hardware abstraction library. For this we use the general matrix multiplication (GEMM) algorithm in order to show that compilers can optimize Alpaka code effectively when tuning key parameters of the algorithm. We do not intend to rival existing, highly optimized DGEMM versions, but merely choose this example to prove that Alpaka allows for platform-specific tuning with a single source code. In addition we analyze the optimization potential available with vendor-specific compilers when confronted with the heavily templated abstractions of Alpaka. We specifically test the code for bleeding edge architectures such as Nvidia's Tesla P100, Intel's Knights Landing (KNL) and Haswell architecture as well as IBM's Power8 system. On some of these we are able to reach almost 50% of the peak floating point operation performance using the aforementioned means. When adding compiler-specific #pragmas we are able to reach 5 TFLOPS/s on a P100 and over 1 TFLOPS/s on a KNL system.

Key facts. Cited by 1 paper in the map (data through 14 Oct 2026). First posted on arXiv 30 Jun 2017.

Builds on

No reference list yet.

Built on by

Cited by year

Citing papers per year: 2024: 1.

1 paper.