Automatically Tuned Linear Algebra Software (ATLAS)

R. Clint Whaley
Jack Dongarra

Computer Science Department
University of Tennessee
Knoxville, TN 37996-1301
Mathematical Sciences Section
Oak Ridge National Laboratory
Oak Ridge, TN 37831

ATLAS is an approach for the automatic generation and optimization of numerical software for processors with deep memory hierarchies and pipelined functional units. The production of such software for machines ranging from desktop workstations to embedded processors can be a tedious and time consuming task. ATLAS has been designed to automate much of this process. We concentrate our efforts on the widely used linear algebra kernels called the Basic Linear Algebra Subroutines (BLAS). In particular, our initial work is for general matrix multiply, DGEMM. However much of the technology and approach developed here can be applied to the other Level 3 BLAS. The general strategy can have an impact on basic linear algebra operations in general and may be extended to other important kernel operations, such as sparse operations.


Figure 1: ATLAS/Vendor Performance Preview 

You can get a draft of the paper describing the project from here.

ATLAS may be downloaded as a gzipped sharfile from here.

The sharfile can be unpacked by

gunzip -c atlas.shar.gz | /bin/sh
There is a README file giving installation/testing help. (Questions, Bugs, Comments, ...)