Performance, Design, and Autotuning of Batched GEMM for GPUs

Ahmad Abdelfattah, Azzam Haidar, Stanimire Tomov, Jack Dongarra

Research output: Chapter in Book/Conference proceedingChapterpeer-review

Abstract

The general matrix-matrix multiplication (GEMM) is the most important numerical kernel in dense linear algebra, and is the key component for obtaining high performance in most LAPACK routines. As batched computations on relatively small problems continue to gain interest in many scientific applications, a need arises for a high performance GEMM kernel for batches of small matrices. Such a kernel should be well designed and tuned to handle small sizes, and to maintain high performance for realistic test cases found in the higher level LAPACK routines, and scientific computing applications in general.

This paper presents a high performance batched GEMM kernel on Graphics Processing Units (GPUs). We address batched problems with both fixed and variable sizes, and show that specialized GEMM designs and a comprehensive autotuning process are needed to handle problems of small sizes. For most performance tests reported in this paper, the proposed kernels outperform state-of-the-art approaches using a K40c GPU.
Original languageEnglish
Title of host publicationHigh Performance Computing
Subtitle of host publicationInternational Conference on High Performance Computing
Pages21-38
Number of pages18
DOIs
Publication statusPublished - 15 Jun 2016
EventInternational Conference on High Performance Computing: 31st International Conference - Frankfurt, Germany
Duration: 19 Jun 201623 Jun 2016

Publication series

NameHigh Performance Computing
Volume9697
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

ConferenceInternational Conference on High Performance Computing
Country/TerritoryGermany
CityFrankfurt
Period19/06/1623/06/16

Fingerprint

Dive into the research topics of 'Performance, Design, and Autotuning of Batched GEMM for GPUs'. Together they form a unique fingerprint.

Cite this