Increasing Efficiency and Portability of cTuning, a Machine Learning Self-Tuning Compiler

07/28/2011 - 1:25pm to 1:45pm
Main Seminar Room - ML
Santosh Sarangkar

Santosh Sarangkar, Texas State University

Abstract:  Compilers have a large set of optimization flags. When using them in a sophisticated way, one gets much faster executables than just using the default "fast" flag.

However, knowing how to use optimization flags in a sophisticated way is an incredibly difficult task, even for the compiler designers. In fact, it is a NP-complete problem, and thus it can be completely solved only trying all the possible combinations of flags.

Self-tuning tools like cTuning find a better set of optimizations than the default "fast" flag, using some kind of heuristic. cTuning uses Machine Learning techniques. By increasing efficiency and portability of the cTuning framework, we can get a better performance on today’s high-end microprocessor.

We have added PGI compiler to the cTuning framework and tested it on Lynx, NCAR's Cray XT5m small supercomputer. We have demonstrated approximately 25% performance improvement over the default "fast" flag.

Video replay of the presentation

Please install the Flash Plug-in or click here for non-flash supported devices.

Download the entire presentation (right-click/save link as)

Presented on July 28, 2011 at NCAR