Next:
Contents
Contents
A Collaborative guide to ATLAS Development
R. Clint Whaley
1
Peter Soendergaard
2
Abstract:
This paper exists to get you started if you want to do some ATLAS development. The hope is that as new developers work on ATLAS, they will add to this note, so that this information grows with time.
Contents
Introduction
Adding to this note
Getting the ATLAS code through github
Background on ATLAS code base
Getting the ATLAS basefile tree and the working ATLAS directory
Basefile/extracted file interaction
ATLAS coding style
Getting CVS write access/Becoming an ATLAS SourceForge developer
ATLAS developer guidelines
Getting CVS write access
I don't agree to the guidelines, what now?
Setting up for CVS write access
Further info
Adding a LAPACK routine to ATLAS
Row-major LAPACK routines
Outline of Steps
Create and debug tester
Writing
ATLAS/src/testing
C-to-f77 wrapper
Getting your routines extracted
Create and debug ATLAS internal routines
Add C and F77 interface routines
Update the LAPACK quick reference guides
Architectural defaults
Rambling on about architectural defaults
Making your own architectural defaults
Getting ATLAS to use your shiny new defaults
Sanity testing for an ATLAS install
Invoking the sanity tests
Understanding the sanity test output
Finding the context of the error
Tracking down an error in the BLAS interface testers
Tracking down an error in the
bin/
testers
Antoine's testing scripts
Getting a good
BLASlib
Using an optimized BLAS
Running the tester
Finding errors
Tracking down errors in the
bin/
testers
Finding a good NB for GEMM
Better kernel timing does not always yield faster GEMM
Large NB means more time in cleanup
Large NB means more time in unblocked application code
Finding a good NB
Information on atlconf
Weaknesses in
spew
/
config
Probe Overview
Architectural Probes
Notes on configure
Compiler Setup and Handling in ATLAS Config
About this document ...
Clint Whaley 2012-07-10