Lazy data-oriented evaluation strategies

Prabhat Totoo*, Hans Wolfgang Loidl

*Corresponding author for this work

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Citation (Scopus)


This paper presents a number of flexible parallelism control mechanisms in the form of evaluation strategies for tree-like data structures implemented in Glasgow parallel Haskell. We achieve additional flexibility by using laziness and circular programs in the coordination code. Heuristics-based parameter selection is employed to auto-tune these strategies for improved performance on a sharedmemory machine without programmer-specified parameters. In particular for unbalanced trees we demonstrate improved performance on a state-of-the-art multi-core server: giving a speedup of up to 37.5 on 48 cores for a constructed test program, and up to 15 for two other non-trivial applications using these strategies, a Barnes-Hut implementation of the n-body problem and a sparse matrix multiplication implementation. Copyright is held by the owner/author(s).

Original languageEnglish
Title of host publicationProceedings of the ACM SIGPLAN International Conference on Functional Programming, ICFP
PublisherAssociation for Computing Machinery
Number of pages12
ISBN (Print)9781450330404
Publication statusPublished - 1 Jan 2014
Event3rd ACM SIGPLAN Workshop on Functional High-Performance Computing - Gothenburg, United Kingdom
Duration: 4 Sept 20144 Sept 2014


Conference3rd ACM SIGPLAN Workshop on Functional High-Performance Computing
Abbreviated titleFHPC 2014
Country/TerritoryUnited Kingdom


  • Dynamic parallelism control
  • Parallel Haskell
  • Quadtrees

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Lazy data-oriented evaluation strategies'. Together they form a unique fingerprint.

Cite this