Title :
Nitro: A Framework for Adaptive Code Variant Tuning
Author :
Muralidharan, Sriram ; Shantharam, Manu ; Hall, Mathew ; Garland, Michael ; Catanzaro, Bryan
Author_Institution :
Univ. of Utah, Salt Lake City, UT, USA
Abstract :
Autotuning systems intelligently navigate a search space of possible implementations of a computation to find the implementation(s) that best meets a specific optimization criteria, usually performance. This paper describes Nitro, a programmer-directed auto tuning framework that facilitates tuning of code variants, or alternative implementations of the same computation. Nitro provides a library interface that permits programmers to express code variants along with meta-information that aids the system in selecting among the set of variants at run time. Machine learning is employed to build a model through training on this meta-information, so that when a new input is presented, Nitro can consult the model to select the appropriate variant. In experiments with five real-world irregular GPU benchmarks from sparse numerical methods, graph computations and sorting, Nitro-tuned variants achieve over 93% of the performance of variants selected through exhaustive search. Further, we describe optimizations and heuristics in Nitro that substantially reduce training time and other overheads.
Keywords :
learning (artificial intelligence); program compilers; software libraries; sorting; Nitro; adaptive code variant tuning framework; autotuning systems; graph computations; irregular GPU benchmarks; library interface; machine learning; meta-information; optimization criteria; overhead reduction; programmer-directed autotuning framework; search space navigation; sorting; sparse numerical methods; training time reduction; Libraries; Optimization; Sparse matrices; Training; Tuners; Vectors; Autotuning; GPUs; Performance Optimization;
Conference_Titel :
Parallel and Distributed Processing Symposium, 2014 IEEE 28th International
Conference_Location :
Phoenix, AZ
Print_ISBN :
978-1-4799-3799-8
DOI :
10.1109/IPDPS.2014.59