Symposium on Implementation and Application of Functional Languages

IFL 2005: Implementation and Application of Functional Languages pp 178-195

With-Loop Fusion for Data Locality and Parallelism

  • Clemens Grelck
  • Karsten Hinckfuß
  • Sven-Bodo Scholz
Conference paper

DOI: 10.1007/11964681_11

Volume 4015 of the book series Lecture Notes in Computer Science (LNCS)
Cite this paper as:
Grelck C., Hinckfuß K., Scholz SB. (2006) With-Loop Fusion for Data Locality and Parallelism. In: Butterfield A., Grelck C., Huch F. (eds) Implementation and Application of Functional Languages. IFL 2005. Lecture Notes in Computer Science, vol 4015. Springer, Berlin, Heidelberg

Abstract

With are versatile array comprehensions used in the functional array language SaC to implement aggregate array operations that are applicable to arrays of any rank and shape. We describe the fusion of with as a novel optimisation technique to improve both the data locality of compiled code in general and the synchronisation behaviour of compiler-parallelised code in particular. Some experiments demonstrate the impact of With-loop-fusion on the runtime performance of compiled SaC code.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Clemens Grelck
    • 1
  • Karsten Hinckfuß
    • 1
  • Sven-Bodo Scholz
    • 2
  1. 1.Institute of Software Technology and Programming LanguagesUniversity of LübeckGermany
  2. 2.Department of Computer ScienceUniversity of HertfordshireUnited Kingdom