LORE: A Loop Repository for the Evaluation of Compilers Zhi Chen∗, Zhangxiaowen Gongy, Justin Josef Szadayy, David C. Wongz, David Padua y, Alexandru Nicolau ∗, Alexander V Veidenbaum ∗, Neftali Watkinson ∗, Zehra Sura x, Saeed Maleki{, Josep Torrellasy, Gerald DeJongy z Intel Corporation, x IBM Research, { Microsoft Research, ∗ University of California, Irvine, y University of Illinois at Urbana-Champaign, Email: ∗fzhic2, nicolau, alexv,
[email protected],
[email protected], yfgong15, szaday2, padua, torrella,
[email protected],
[email protected], {
[email protected] Abstract—Although numerous loop optimization techniques successive versions, and the effectiveness of solo/compound have been designed and deployed in commercial compilers in transformations. While some of such data can be found in the the past, virtually no common experimental infrastructure nor literature, in many cases compiler studies are confined to a repository exists to help the compiler community evaluate the effectiveness of these techniques. few codes, which are not always widely available. In addition, This paper describes a repository, LORE, that maintains a there is little in the area of historical data that shows how much large number of C language for loop nests extracted from popu- progress compiler technology has made in terms of delivering lar benchmarks, libraries, and real applications. It also describes performance. the infrastructure that builds and maintains the repository. Each In this paper, we propose LORE, a repository of program loop nest in the repository has been compiled, transformed, executed, and measured independently. These loops cover a segments, their semantically equivalent transformed versions, variety of properties that can be used by the compiler community and performance measurements with various compilers.