CLBlast: A Tuned OpenCL BLAS Library
arXiv:1705.05249 · doi:10.1145/3204919.3204924
Abstract
This work introduces CLBlast, an open-source BLAS library providing optimized OpenCL routines to accelerate dense linear algebra for a wide variety of devices. It is targeted at machine learning and HPC applications and thus provides a fast matrix-multiplication routine (GEMM) to accelerate the core of many applications (e.g. deep learning, iterative solvers, astrophysics, computational fluid dynamics, quantum chemistry). CLBlast has five main advantages over other OpenCL BLAS libraries: 1) it is optimized for and tested on a large variety of OpenCL devices including less commonly used devices such as embedded and low-power GPUs, 2) it can be explicitly tuned for specific problem-sizes on specific hardware platforms, 3) it can perform operations in half-precision floating-point FP16 saving bandwidth, time and energy, 4) it has an optional CUDA back-end, 5) and it can combine multiple operations in a single batched routine, accelerating smaller problems significantly. This paper describes the library and demonstrates the advantages of CLBlast experimentally for different use-cases on a wide variety of OpenCL hardware.
Conference paper in: IWOCL '18, the International Workshop on OpenCL
References in corpus (2)
Cited by in corpus (6)
- A model-driven approach for a new generation of adaptive libraries
- Benchmarking optimization algorithms for auto-tuning GPU kernels
- The Linear Algebra Mapping Problem. Current state of linear algebra languages and libraries
- SmartSplit: Latency-Energy-Memory Optimisation for CNN Splitting on Smartphone Environment
- Hiperwalk: Simulation of Quantum Walks with Heterogeneous High-Performance Computing
- Mobiprox: Supporting Dynamic Approximate Computing on Mobiles