MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Parallel Programming using the Iteration Space Visualizer

Download:
pdf | ps
by Yijun Yu, Erik H. D'holl
http://wwwmath.uni-muenster.de/math/u/guidow/wsvl2000/Papers/YuDHollander.ps
Add To MetaCart

Abstract:

A 3D-iteration space visualizer (ISV) is presented to analyze the parallelism in loops and to find loop transformations which enhance the parallelism. Using automatic program instrumentation, the iteration space dependency graph (ISDG) is constructed, which shows the exact data dependencies of arbitrarily nested loops. Various graphical operations such as rotation, zooming, clipping, coloring and filtering, permit a detailed examination of the dependence relations. Furthermore an animated dataflow execution shows the maximal parallelism and the parallel loops are indicated automatically by an embedded data dependence analysis. In addition, the user may discover and indicate additional parallelism for which a suitable unimodular loop transformation is calculated and verified. The ISV has been applied to parallelize algorithmic kernel programs, a CFD (Computational Fluid Dynamics) simulation code, the detection of statement level parallelism and loop variable privatization.The applications show that the visualizer is a versatile and easy to use tool for the high performance application programmer.

Citations

172 Unimodular transformations of double loops – Banerjee - 1990
92 Maximizing parallelism and minimizing synchronization with affine partitions”, Parallel Computing 24 – Lim - 1998
77 The Range Test: A Dependence Test for Symbolic, Non-linear Expressions – Blume, Eigenmann - 1994
72 Array Privatization for Parallel Execution of Loops – Li - 1992
71 The Omega Library Interface Guide – Kelly, Maslov, et al. - 1996
58 Nonlinear array dependence analysis – Wonnacott, Pugh - 1995
48 Non-unimodular transformations of nested loops – Ramanujam - 1992
25 Minimizing communication while preserving parallelism – Kelly, Pugh - 1996
24 Partitioning and labeling of loops by unimodular transformations – D'Hollander - 1992
23 Static and Dynamic Evaluation of Data Dependence Analysis – Petersen, Padua - 1993
22 An affine Partitioning Algorithm to Maximize Parallelism and Minimize Communication – Lim, Cheong, et al. - 1999
18 Experiences using the ParaScope Editor: an interactive parallel programming tool – Hall, Harvey, et al. - 1993
18 Unimodular transformations of non-perfectly nested loops – Xue - 1997
14 Nonlinear and Symbolic Data Dependence Testing – Blume, Eigenmann - 1998
14 The fortran parallel transformer and its programming environment – D’Hollander, Zhang, et al. - 1998
10 SUIF: A parallelizing and optimizing research compiler – WILSON, FRENCH, et al. - 1994
7 The Banerjee-Wolfe and GCD tests on exact data dependence information – Psarris - 1996
5 Partitioning loops with variable dependence distances – Yu, D’Hollander - 2000
4 NaraView: An interactive 3D visualization system for parallelization of programs – Sasakura, Joe, et al. - 1999
3 A 3D-java tool to visualize loop-carried dependences, Parallel Computing: Fundamentals – Yu - 1999
2 Fluid flow and thermal analysis during mould filling and solidification of castings – Xu - 1993
1 Unimodular transformations of double loops. InAdvances inLanguages andCompilers for Parallel Computing – Banerjee - 1990
1 Nonlinear and symbolic data dependence testing. IEEETransactions onParallel andDistributed Systems – Blume, Eigenmann - 1998
1 Experiences using the ParaScope Editor: an interactive parallel programming tool – Roth - 1993
1 Anafnepartitioning algorithm to maximize parallelism and minimize communication – Lim, Lam
1 Static anddynamic evaluationof datadependence analysis techniques:. IEEETransactions onParallel andDistributedSystems – Padua - 1996
1 Fluidow andthermal analysis during mouldlling and solidication of castings – Xu - 1993
1 A3D-javatool to visualize loop-carrieddependences. InParallel Computing: Fundamentals &Applications – Yu - 2000