Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1007/978-3-642-40047-6_21guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Online dynamic dependence analysis for speculative polyhedral parallelization

Published: 26 August 2013 Publication History

Abstract

We present a dynamic dependence analyzer whose goal is to compute dependences from instrumented execution samples of loop nests. The resulting information serves as a prediction of the execution behavior during the remaining iterations and can be used to select and apply a speculatively optimizing and parallelizing polyhedral transformation of the target sequential loop nest. Thus, a parallel lock-free version can be generated which should not induce any rollback if the prediction is correct. The dependence analyzer computes distance vectors and linear functions interpolating the memory addresses accessed by each memory instruction, and the values of some scalars. Phases showing a changing memory behavior are detected thanks to a dynamic adjustment of the instrumentation frequency.
The dependence analyzer takes part of a whole framework dedicated to speculative parallelization of loop nests which has been implemented with extensions of the LLVM compiler and an x86-64 runtime system.

References

[1]
Matthew Arnold and Barbara G. Ryder. A framework for reducing the cost of instrumented code. In Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation, PLDI '01, pages 168-179, New York, NY, USA, 2001. ACM.
[2]
U. Banerjee. Loop Transformations for Restructuring Compilers - The Foundations. Kluwer Academic Publishers, 1993.
[3]
K-F Faxén, K. Popov, S. Jansson, and L. Albertsson. Embla - data dependence profiling for parallel programming. In Proceedings of the 2008 International Conference on Complex, Intelligent and Software Intensive Systems, CISIS '08, pages 780-785, Washington, DC, USA, 2008. IEEE Computer Society.
[4]
A. Jimborean, Ph. Clauss, B. Pradelle, L. Mastrangelo, and V. Loechner. Adapting the polyhedral model as a framework for efficient speculative parallelization. In PPoPP '12, 2012.
[5]
A. Jimborean, M. Herrmann, V. Loechner, and Ph. Clauss. VMAD: A virtual machine for advanced dynamic analysis of programs. In Proceedings of the IEEE International Symposium on Performance Analysis of Systems and Software, ISPASS '11, pages 125-126, Washington, DC, USA, 2011. IEEE Computer Society.
[6]
A. Jimborean, L. Mastrangelo, V. Loechner, and Ph. Clauss. VMAD: An Advanced Dynamic Program Analysis and Instrumentation Framework. In Michael OBoyle, editor, Compiler Construction, volume 7210 of Lecture Notes in Computer Science, pages 220-239. Springer Berlin Heidelberg, 2012.
[7]
A. Ketterlin and Ph. Clauss. Profiling Data-Dependence to Assist Parallelization: Framework, Scope, and Optimization. In MICRO-45, The 45th Annual IEEE/ACM International Symposium on Microarchitecture, Canada, 2012.
[8]
H. Kim, N. P. Johnson, J. W. Lee, S. A. Mahlke, and D. I. August. Automatic speculative doall for clusters. In CGO '12. ACM, 2012.
[9]
M. Kim, H. Kim, and C-K Luk. SD3: a scalable approach to dynamic datadependence profiling. In MICRO '43. IEEE Computer Society, 2010.
[10]
LLVM compiler infrastructure. http://llvm.org.
[11]
C. E. Oancea and A. Mycroft. Set-congruence dynamic analysis for thread-level speculation (TLS). In LCPC '08. Springer-Verlag, 2008.
[12]
Polybenchs. http://www-rocq.inria.fr/pouchet/software/polybenchs.
[13]
R. Vanka and J. Tuck. Efficient and accurate data dependence profiling using software signatures. In Proceedings of the Tenth International Symposium on Code Generation and Optimization, CGO '12, pages 186-195, NY, USA, 2012.
[14]
C. von Praun, R. Bordawekar, and C. Cascaval. Modeling optimistic concurrency using quantitative dependence analysis. In Proceedings of the 13th ACM SIGPLAN Symposium on Principles and practice of parallel programming, PPoPP '08, pages 185-196, New York, NY, USA, 2008. ACM.
[15]
X. Zhang, A. Navabi, and S. Jagannathan. Alchemist: A transparent dependence distance profiling infrastructure. In CGO '09. IEEE Computer Society, 2009.

Cited By

View all
  • (2019)Accelerating Data-Dependence Profiling with Static HintsEuro-Par 2019: Parallel Processing10.1007/978-3-030-29400-7_2(17-28)Online publication date: 26-Aug-2019
  • (2018)Generalized profile-guided iterator recognitionProceedings of the 27th International Conference on Compiler Construction10.1145/3178372.3179511(185-195)Online publication date: 24-Feb-2018
  • (2016)Trace-based affine reconstruction of codesProceedings of the 2016 International Symposium on Code Generation and Optimization10.1145/2854038.2854056(139-149)Online publication date: 29-Feb-2016
  1. Online dynamic dependence analysis for speculative polyhedral parallelization

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image Guide Proceedings
    Euro-Par'13: Proceedings of the 19th international conference on Parallel Processing
    August 2013
    885 pages
    ISBN:9783642400469
    • Editors:
    • Felix Wolf,
    • Bernd Mohr,
    • Dieter Mey

    Sponsors

    • INTEL: Intel Corporation
    • Deutsche Forschungsgemeinschaft
    • NVIDIA
    • Bull GmbH: Bull GmbH

    Publisher

    Springer-Verlag

    Berlin, Heidelberg

    Publication History

    Published: 26 August 2013

    Author Tags

    1. dynamic online dependence analysis
    2. optimization
    3. parallelization
    4. polyhedral transformations
    5. runtime
    6. speculative

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

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

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)Accelerating Data-Dependence Profiling with Static HintsEuro-Par 2019: Parallel Processing10.1007/978-3-030-29400-7_2(17-28)Online publication date: 26-Aug-2019
    • (2018)Generalized profile-guided iterator recognitionProceedings of the 27th International Conference on Compiler Construction10.1145/3178372.3179511(185-195)Online publication date: 24-Feb-2018
    • (2016)Trace-based affine reconstruction of codesProceedings of the 2016 International Symposium on Code Generation and Optimization10.1145/2854038.2854056(139-149)Online publication date: 29-Feb-2016

    View Options

    View options

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media