Q'Nial: a portable interpreter for the nested interactive array language, Nial
Software—Practice & Experience
Deforestation: transforming programs to eliminate trees
Proceedings of the Second European Symposium on Programming
Towards an automated tupling strategy
PEPM '93 Proceedings of the 1993 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
FPCA '93 Proceedings of the conference on Functional programming languages and computer architecture
Improving data locality with loop transformations
ACM Transactions on Programming Languages and Systems (TOPLAS)
Fusion of Loops for Parallelism and Locality
IEEE Transactions on Parallel and Distributed Systems
Loop fusion in high performance Fortran
ICS '98 Proceedings of the 12th international conference on Supercomputing
ACM SIGPLAN Notices
Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
Implementing the NAS Benchmark MG in SAC
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
WITH-Loop-Folding in SAC - Condensing Consecutive Array Operations
IFL '97 Selected Papers from the 9th International Workshop on Implementation of Functional Languages
A Generic Programming Extension for Clean
IFL '02 Selected Papers from the 13th International Workshop on Implementation of Functional Languages
Dependency-style generic haskell
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Single Assignment C: efficient support for high-level array operations in a functional setting
Journal of Functional Programming
Shared memory multiprocessor support for functional array processing in SAC
Journal of Functional Programming
A programming language
IFL'02 Proceedings of the 14th international conference on Implementation of functional languages
Aggressive loop fusion for improving locality and parallelism
ISPA'05 Proceedings of the Third international conference on Parallel and Distributed Processing and Applications
With-Loop scalarization – merging nested array operations
IFL'03 Proceedings of the 15th international conference on Implementation of Functional Languages
Improved fusion for optimizing generics
PADL'05 Proceedings of the 7th international conference on Practical Aspects of Declarative Languages
SAC: a functional array language for efficient multi-threaded execution
International Journal of Parallel Programming
Merging compositions of array skeletons in SAC
Parallel Computing - Algorithmic skeletons
SAC: off-the-shelf support for data-parallelism on multicores
Proceedings of the 2007 workshop on Declarative aspects of multicore programming
Controlling chaos: on safe side-effects in data-parallel operations
Proceedings of the 4th workshop on Declarative aspects of multicore programming
On optimising shape-generic array programs using symbolic structural information
IFL'06 Proceedings of the 18th international conference on Implementation and application of functional languages
Higher-Order and Symbolic Computation
StagedSAC: a case study in performance-oriented DSL development
PEPM '12 Proceedings of the ACM SIGPLAN 2012 workshop on Partial evaluation and program manipulation
CEFP'11 Proceedings of the 4th Summer School conference on Central European Functional Programming School
POPL '13 Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Data flow fusion with series expressions in Haskell
Proceedings of the 2013 ACM SIGPLAN symposium on Haskell
Hi-index | 0.00 |
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.