Adrian Tate (Cray Inc.)
Industrial Auto-tuning with CrayATF
- Cray's Auto-Tuning Framework CrayATF is the first industrial autotuning infrastructure, and has been used to release real vendor-tuned scientific libraries to the Cray community. While much academic research and innovation has directly or indirectly influenced the design of CrayATF, there are also new concentrations that are specific to the autotuning of libraries in the industrial sector. This talk expounds some of those differences and challenges, and describes what challenges remain unsolved. We describe the key development methodologies in the CrayATF approach, namely a) adaptive library model b) high-level to low-level source generation (and in particular using Ruby to generate Fortran/C optimized code) and c) offline auto-tuning.
Several of Cray's current and future libraries are built and optimized using CrayATF. We discuss the technical lessons and challenges in the development of those libraries and describe the optimization techniques used to obtain considerable performance improvements for Cray scientific applications. We also describe how auto-tuning technology was used to produce HPL performance above 1PetaFlop, and we discuss the increasing need for auto-tuning in complex future architectures.