With-Loop Fusion for Data Locality and Parallelism
- 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
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.
Unable to display preview. Download preview PDF.