Stefan Ciobaca, Liviu Ciortuz

Every few months new types of hardware are released. Compiler writers facethe challenging task of keeping the compiler optimizations up-to-date with the latestin hardware technology. In this paper we apply machine learning techniquesto predict the best unroll factors for loops, using GCC and the x86 architecture forour experiments. We show that, depending on the machine learning tools used, weget similar or slightly better performance than the native GCC loop optimizer. Ourresult shows that machine learning techniques can be used to automatically trainthe heuristic that computes the unroll factor for loops, saving time for compilermanufacturers and providing better performance in the case of scientific computations.

Full Document (PDF)

Bibtex

@TechReport{lulo,
    author = "{c S}tefan Ciob{^ a}c{u a} and Liviu Ciortuz",
    title = "{L}earning to {U}nroll {L}oops {O}ptimally",
    institution = "``Al.I.Cuza'' University of Ia{c s}i, Faculty of Computer Science",
    year = "2008",
    number = "TR 08-03",
    url = "https://publications.info.uaic.ro/technical-reports/archive/tr08-03-2008-learning-to-unroll-loops-optimally/"
}