Title
Code Generation And Optimization Of Distributed-Memory Dense Linear Algebra Kernels
Abstract
Design by Transformation (DxT) is an approach to software development that encodes domain-specific programs as graphs and expert design knowledge as graph transformations. The goal of DxT is to mechanize the generation of highly-optimized code. This paper demonstrates how DxT can be used to transform sequential specifications of an important set of Dense Linear Algebra (DLA) kernels, the level-3 Basic Linear Algebra Subprograms (BLAS3), into high-performing library routines targeting distributed-memory (cluster) architectures. Getting good BLAS3 performance for such platforms requires deep domain knowledge, so their implementations are manually coded by experts. Unfortunately, there are few such experts and developing the full variety of BLAS3 implementations takes a lot of repetitive effort. A prototype tool, DxTer, automates this tedious task. We explain how we build on previous work to represent loops and multiple loop-based algorithms in DxTer. Performance results on a BlueGene/P parallel supercomputer show that the generated code meets or beats implementations that are hand-coded by a human expert and outperforms the widely used ScaLAPACK library. (C) 2013. The Authors. Published by Elsevier B.V. Selection and peer review under responsibility of the organizers of the 2013 International Conference on Computational Science
Year
DOI
Venue
2013
10.1016/j.procs.2013.05.295
2013 INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE
Keywords
Field
DocType
program generation, dense linear algebra, high-performance software, distributed-memory computing
Linear algebra,Data mining,Computer science,Artificial intelligence,Software development,Supercomputer,Domain knowledge,Parallel computing,Distributed memory,Code generation,ScaLAPACK,Machine learning,Basic Linear Algebra Subprograms
Conference
Volume
ISSN
Citations 
18
1877-0509
5
PageRank 
References 
Authors
0.46
7
3
Name
Order
Citations
PageRank
Bryan Marker117811.58
Don S. Batory256041237.66
Robert A. van de Geijn32047203.08