skip to main content
10.1145/1958746.1958821acmconferencesArticle/Chapter ViewAbstractPublication PagesicpeConference Proceedingsconference-collections
research-article

Combined profiling: practical collection of feedback information for code optimization

Published: 14 March 2011 Publication History

Abstract

Feedback-directed optimization (FDO) depends on profiling information that is representative of a typical execution of a given application. For most applications of interest, multiple data inputs need to be used to characterize the typical behavior of the program. Thus, profiling information from multiple runs of the program needs to be combined. We are working on a new methodology to produce statistically sound combined profiles from multiple runs of a program. This paper presents the motivation for combined profiling (CP), the requirements for a practical and useful methodology to combine profiles, and introduces the principal ideas under development for the creation of this methodology. We are currently working on implementations of CP in both the LLVM compiler and the IBM XL suite of compilers.

References

[1]
G. Ammons and J. R. Larus. Improving data-flow analysis with path profiles. In Conference on Programming Language Design and Implementation (PLDI), pages 72--84, Montreal, QC, Canada, June 1998.
[2]
R. Bodík and R. Gupta. Partial dead code elimination using slicing transformations. In Conference on Programming Language Design and Implementation (PLDI), pages 159--170, Las Vegas, NV, USA, 1997.
[3]
T. F. Chan, G. H. Golub, and R. J. LeVeque. Updating formulae and a pairwise algorithm for computing sample variances. Technical Report STAN-CS-79-773, Stanford University, November 1979.
[4]
C. Chekuri, R. Johnson, R. Motwani, B. Natarajan, B. R. Rau, and M. Schlansker. Profile-driven instruction level parallel scheduling with application to super blocks. In Intern. Symposium on Microarchitecture (MICRO), pages 58--67, Paris, France, December 1996.
[5]
F. Chow, S. Chan, R. Kennedy, S.-M. Liu, R. Lo, and P. Tu. A new algorithm for partial redundancy elimination based on ssa form. In Programming language design and implementation, pages 273--286, Las Vegas, NV, USA, 1997.
[6]
J. A. Fisher and S. M. Freudenberger. Predicting conditional branch directions from previous runs of a program. In Intern. Conf. on Architectural Support for Programming Languages and Operating Systems (ASPLOS), pages 85--95, 1992.
[7]
R. Gupta, D. A. Berson, and J. Z. Fang. Path profile guided partial dead code elimination using predication. In Parallel Architectures and Compilation Techniques (PACT), page 102, San Francisco, CA, USA, 1997.
[8]
R. Gupta, D. A. Berson, and J. Z. Fang. Path profile guided partial redundancy elimination using speculation. In Intern. Conf. on Computer Languages (ICCL), pages 230--239, 1998.
[9]
A. Lakhany and H. Mausser. Estimating the parameters of the generalized lambda distribution. Algo Research Quarterly, 3(3):47--58, December 2000.
[10]
C. Lattner and V. Adve. LLVM: A compilation framework for lifelong program analysis & transformation. In Intern. Symp. on Code Generation and Optimization (CGO), San Jose, CA, USA, March 2004.
[11]
S. Savari and C. Young. Comparing and combining profiles. Journal of Instruction-Level Parallelism, 2, May 2000.
[12]
M. D. Smith. Overcoming the challenges to feedback-directed optimization (keynote talk). In Workshop on Dynamic and Adaptive Compilation and Optimization, pages 1--11, 2000.
[13]
L. Wasserman. All of Statistics: A Concise Course in Statistical Inference. Springer, 2003.
[14]
C. Young and M. D. Smith. Better global scheduling using path profiles. In Intern. Symposium on Microarchitecture (MICRO), pages 115--123, Dallas, TX, USA, 1998.

Cited By

View all
  • (2018)A New Adaptive Algorithm for Inlining: An Experiment on FDO-Based TransformationsProcedia Computer Science10.1016/j.procs.2018.04.166130(1108-1113)Online publication date: 2018
  • (2014)Variability of data dependences and control flow2014 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)10.1109/ISPASS.2014.6844482(180-189)Online publication date: Mar-2014
  • (2013)Automatic speculative parallelization of loops using polyhedral dependence analysisProceedings of the First International Workshop on Code OptimiSation for MultI and many Cores10.1145/2446920.2446921(1-9)Online publication date: 24-Feb-2013
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ICPE '11: Proceedings of the 2nd ACM/SPEC International Conference on Performance engineering
March 2011
470 pages
ISBN:9781450305198
DOI:10.1145/1958746
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 14 March 2011

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. feedback-directed optimization
  2. profile combination
  3. program behavior
  4. statistical model

Qualifiers

  • Research-article

Conference

ICPE'11

Acceptance Rates

Overall Acceptance Rate 252 of 851 submissions, 30%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2018)A New Adaptive Algorithm for Inlining: An Experiment on FDO-Based TransformationsProcedia Computer Science10.1016/j.procs.2018.04.166130(1108-1113)Online publication date: 2018
  • (2014)Variability of data dependences and control flow2014 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS)10.1109/ISPASS.2014.6844482(180-189)Online publication date: Mar-2014
  • (2013)Automatic speculative parallelization of loops using polyhedral dependence analysisProceedings of the First International Workshop on Code OptimiSation for MultI and many Cores10.1145/2446920.2446921(1-9)Online publication date: 24-Feb-2013
  • (2012)Combined profilingProceedings of the 2012 IEEE International Symposium on Performance Analysis of Systems & Software10.1109/ISPASS.2012.6189227(210-220)Online publication date: 1-Apr-2012

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media