Loading...
Thumbnail Image
Publication

Properties of Profile-Guided Compiler Optimizations with GCC and LLVM

Pal, Soma
Citations
Altmetric:
Abstract
Profile-guided optimizations (PGO) are a class of sophisticated compiler transformations that employ information regarding the profile or execution-time behavior of a program to improve program performance, typically speed. PGOs for popular language platforms,like C, C++ and Java, are generally regarded as a mature and mainstream technology andare supported by most standard compilers. Consequently, properties and characteristics of PGOs are assumed to be established and known, but have rarely been systematically studied with multiple mainstream compilers. The goal of this work is to explore and report some important properties of PGOs in mainstream compilers, specifically GCC and LLVM in this work. We study the performance delivered by PGOs at the program and function-level, impact of different execution profiles on PGO performance, and compare relative PGO benefit delivered by different mainstream compilers. We also describe the experimental framework that we built to conduct this research. We expect that our research will help focus future developmental work and research in PGOs and assist in building frameworks to field PGOs in actual systems.
Description
Date
2022-12-31
Journal Title
Journal ISSN
Volume Title
Publisher
University of Kansas
Collections
Research Projects
Organizational Units
Journal Issue
Keywords
Computer science,
Citation
DOI
Embedded videos