Skip to main content

High Level Software Synthesis of Affine Iterative Algorithms onto Parallel Architectures

  • Conference paper
  • First Online:
High Performance Computing and Networking (HPCN-Europe 2000)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1823))

Included in the following conference series:

Abstract

In this work a High Level Software Synthesis (HLSS) methodology is presented. HLSS allows the automatic generation of a parallel program starting from a sequential C program. HLSS deals with a significant class of iterative algorithms, the one expressible through nested loops with affine dependencies, and integrates several techniques to achieve the final parallel program. The computational model of the System of Affine Recurrence Equations (SARE) is used. As first step in HLSS, the iterative C program is converted into SARE form; parallelism is extracted from the SARE through allocation and scheduling functions which are represented as unimodular matrices and are determined by means of an optimization process. A clustering phase is applied to fit the parallel program onto a parallel machine with a fixed amount of resources (number of processors, main memory, communication channels). Finally, the parallel program to be executed on the target parallel system is generated.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Clauss P., “An Efficient Allocation Strategy for Mapping Affine Recurrences into Space and Time Optima Regular Processor Arrays”, Parcella, Sep. 1994.

    Google Scholar 

  2. Clauss P., Perrin G.R., “Optimal Mapping of Systolic Algorithms by Regular Instruction Shifts”, IEEE Intern. Conf. Application-Specific Array Processors, pp. 224–235, Aug. 1994.

    Google Scholar 

  3. Feautrier P., “Automatic Parallelization in the Polytope Model”, Les Menuires, Vol. LNCS 1132 pp. 79–100, 1996.

    Google Scholar 

  4. Feautrier P., “Some Efficient Solution to the Affine Scheduling Problem, II Multi-Dimensional Time”, Intern. J. Parallel Programming, Vol. 21, pp. 389–420, Dec. 1992.

    Article  MATH  MathSciNet  Google Scholar 

  5. H. Le Verge, Ch. Mauras, P. Quinton-“The alpha language and its use for the design of systolic arrays”-Journal of VLSI and signal processing, 3: 173–182, 1991.

    Article  Google Scholar 

  6. Lee P., Kedem Z., “Synthesizing Linear Array Algorithms from Nested For Loop Algorithms”, IEEE Trans. on Computers, Vol. C-37, No. 12, pp. 1578–1598, Dec. 1988.

    MathSciNet  Google Scholar 

  7. Lengauer C., “Loop Parallelization in the Polytope Model”, CONCUR, Vol. LNCS 715, pp. 398–416, 1993.

    Google Scholar 

  8. Loechner V., Mongenet C., “OPERA: A Toolbox for Loop Parallelization”, International Workshop on Software Engineering for Parallel and Distribuited Systems, PDSE, 1996.

    Google Scholar 

  9. Loechner V., Mongenet C., “A Toolbox for Affine Recurrence Equations Parallelization”,HPCN’ 95, Milan, Vol. LNCS 919. pp. 263–268, May 1995.

    Google Scholar 

  10. Loechner V., Mongenet C., “Solutions to the Communication Minimization Problem for Affine Recurrence Equations”, EUROPAR’ 97, Vol. LNCS 1300, pp.328–337 1997.

    Google Scholar 

  11. Mongenet C., “Data Compiling for System of Affine Recurrence Equations”, IEEE Intern. Conf. on Application-Specific Array Processors, ASAP, pp. 212–223, Aug. 1994.

    Google Scholar 

  12. Mongenet C., Clauss P., Perrin G.R., “Geometrical Tools to Map System of Affine Recurrence Equations on Regular Arrays”, Acta Informatica, Vol. 31, No. 2, pp. 137–160, 1994.

    Article  MATH  MathSciNet  Google Scholar 

  13. D. K. Wilde-“The ALPHA language”-Technical Report Internal Publication N.827, IRISA, May 1994

    Google Scholar 

  14. Marongiu A., Palazzari P., “A New Memory-Saving Technique to Map System of Affine Recurrence Equations (SARE) onto Distributed Memory Systems”. Proc. Intern. Parallel Processing Symposium IPPS 99 — Puerto Rico — April, 12th, 16th 1999.

    Google Scholar 

  15. Bartoloni et al, “A Hardware implementation of the APE100 architecture”, Int. Journal of Modern Physics, C4, 1993.

    Google Scholar 

  16. Lamport L., “The parallel execution of DO loops”, Comm. Of the ACM, 17(2):83–93, Feb. 1974.

    Article  MATH  MathSciNet  Google Scholar 

  17. Darte A., Robert Y., “Affine-by-Statement scheduling of uniform and affine loop nests over parametric domains”, Journ. of Parallel and Distributed Computing, Vol. 29, pp 43–59, 1995

    Article  Google Scholar 

  18. Darte A., Robert Y., “Mapping uniform loop nests onto distributed memory architectures”, Research Report n o 93-03 LIP-ENS Lyon, Jan. 1993.

    Google Scholar 

  19. Dowling M.L., “Optimal code parallelization using unimodular transformations”, Parallel Computing, 16, pp. 157–171. 1990.

    Article  MATH  MathSciNet  Google Scholar 

  20. Mongenet C., “Affine dependence classification for communications minimization”, ICPS Research Report No. 96-07, downloadable from http://icps.u-strasbg.fr/pub-96

  21. Kirkpatrick S., Gelatt C.D., Vecchi M.P., “Optimization by simulated annealing”, Science, Vol. 220, N. 4589, 13 May 1983

    Google Scholar 

  22. M. W. Hall, J. M. Anderson, S. P. Amarasinghe, B. R. Murphy, S.-W. Liao, E. Bugnion and M. S. Lam, “Maximizing Multiprocessor Performance with the SUIF Compiler”, IEEE Computer, December 1996.

    Google Scholar 

  23. A. W. Lim and M. S. Lam, “Maximizing Parallelism and Minimizing Synchronization with Affine Transforms”, Conference Proceedings of the 24th Annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, January, 1997.

    Google Scholar 

  24. Marongiu A., Palazzari P., “Automatic Mapping of System of N-dimensional Affine Recurrence Equations (SARE) onto Distributed Memory Parallel Systems” Accepted to appear in the special issue of IEEE Trans. Software Engineering on Architecture-Independent Languages and Software Tools for Parallel Processing

    Google Scholar 

  25. A. Marongiu, P. Palazzari: “Optimization of Automatically Generated Parallel Programs” The 3rd IMACS International Multiconference on Circuits, Systems, Communications and Computers (CSCC’99)-July 4–8, 1999, Athens (Greece).

    Google Scholar 

  26. P. Feautrier, “Data Flow Analysis of Scalar end Array References”, Intern. Journal of Parallel Programming, vol. 20, n. 1, 1991

    Google Scholar 

  27. High Performance Fortran Forum, “High Performance Fortran language Specification”, Sci. Prog., vol. 2, 1993.

    Google Scholar 

  28. J. Merlin, A. Hey, “An Introduction to High Performance Fortran”, Sci. Prog. vol. 4, 1995.

    Google Scholar 

  29. Zimmermann K.H., “A Unifying Lattice-Based Approach for the Partitioning of Systolic Arrays via LPGS and LSGP”, Journal of VLSI Signal Processing, 17, pp 21–41, 1997.

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Marongiu, A., Palazzari, P., Cinque, L., Mastronardo, F. (2000). High Level Software Synthesis of Affine Iterative Algorithms onto Parallel Architectures. In: Bubak, M., Afsarmanesh, H., Hertzberger, B., Williams, R. (eds) High Performance Computing and Networking. HPCN-Europe 2000. Lecture Notes in Computer Science, vol 1823. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45492-6_33

Download citation

  • DOI: https://doi.org/10.1007/3-540-45492-6_33

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67553-2

  • Online ISBN: 978-3-540-45492-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics