• Cite Icon7
  • https://doi.org/10.1145/2620678.2620682Copy DOI Icon

The Design and Implementation of GUMSMP

  • Aug 28, 2013
  • Malak Aljabri +2 more
Show More
  • Abstract
  • Literature Map
  • References
  • Citations
  • Similar Papers
Abstract

The most widely available high performance platforms today are multilevel clusters of multicores. The Glasgow Haskell Compiler (GHC) provides a number of parallel Haskell implementations targeting different parallel architectures. In particular, GHC-SMP supports shared memory, and GHC-GUM supports distributed memory machines. Both implementations use different, but related, runtime environment (RTE) mechanisms. Good performance results can be achieved on shared memory architectures and on networks individually. However, a combination of both, for networks of multicores, is lacking.We present the design and implementation of a new parallel Haskell RTE implementation, GUMSMP, which exploits hierarchical platforms more effectively. It is designed to efficiently combine distributed memory parallelism, using a virtual shared heap over a cluster, with low-overhead shared memory parallelism on the multicores. Key design objectives for realising this system are: asymmetric load balance, effective latency hiding, and mostly passive load distribution.We show that the automatic hierarchical load distribution policies must be carefully tuned to obtain good performance, showing the impact of several policies, including work pre-fetching and favouring inter-node work distribution. We present the initial performance results for this implementation, demonstrating the good scalability of a set of 8 benchmarks on up to 100 cores, and show performance gains of up to 20% compared to GHC-GUM.

Similar Papers
  • Conference Article
  • Citations13

The Intel labs Haskell research compiler

  • Sep 23, 2013
  • Hai Liu +3
  • Research Article
  • Citations4

Algorithmic optimizations of a conjugate gradient solver on shared memory architectures

  • Jan 01, 2006
  • International Journal of Parallel, Emergent and Distributed Systems
  • Henrik Löf +1
  • Research Article

VIRTUAL SHARED MEMORY MACHINES— AN APPLICATION OF PVM∗

  • Jan 01, 1995
  • Parallel Algorithms and Applications
  • S Stratulat +1
  • Research Article
  • Citations43

Affinity-Based Thread and Data Mapping in Shared Memory Systems

  • Dec 05, 2016
  • ACM Computing Surveys
  • Matthias Diener +4
  • Conference Article
  • Citations1

Combining message-passing and inter-process communication in SMP-hybrid cluster for efficient parallel medical image analysis

  • Nov 02, 2004
  • Proceedings of SPIE, the International Society for Optical Engineering/Proceedings of SPIE
  • Sean C S Tan +1
  • PDF
  • Research Article
  • Citations1

Effective On-Chip Communication for Message Passing Programs on Multi-Core Processors

  • Nov 03, 2021
  • Electronics
  • Joonmoo Huh +1
  • Research Article
  • Citations2

Coding Productivity in MapReduce Applications for Distributed and Shared Memory Architectures

  • Nov 01, 2015
  • International Journal of Software Engineering and Knowledge Engineering
  • Daniel Adornes +3
  • Conference Article
  • Citations2

Global Variable Partition with Virtually Shared Scratch Pad Memory to Minimize Schedule Length

  • Sep 01, 2009
  • Meikang Qiu +5
  • Research Article
  • Citations5

Thread-parallel mesh improvement using face and edge swapping and vertex insertion

  • Feb 01, 2018
  • Computational Geometry
  • Reza Zangeneh +1
  • Research Article
  • Citations56

Parallel ant colony optimization for resource constrained job scheduling

  • Mar 19, 2014
  • Annals of Operations Research
  • Dhananjay Thiruvady +2
  • Book Chapter
  • Citations4

OpenMP/MPI Programming in a Multi-cluster System Based on Shared Memory/Message Passing Communication

  • Jan 01, 2002
  • Adam Smyk +1
  • Conference Article
  • Citations1

A multistage pipelined memory management algorithm for parallel shared memory switches

  • Jan 01, 2005
  • J.M Mccollum +2
  • Research Article
  • Citations2

A Massively Parallel SMC Sampler for Decision Trees

  • Jan 02, 2025
  • Algorithms
  • Efthyvoulos Drousiotis +4
  • Conference Article
  • Citations3

Sequential and Parallel Algorithms for Partitioning Tree Task Graphs on Shared Memory Architecture

  • Jan 01, 1994
  • S Ray +1
  • Conference Article
  • Citations4

Scalable Triadic Analysis of Large-Scale Graphs: Multi-core vs. Multi-processor vs. Multi-threaded Shared Memory Architectures

  • Oct 01, 2012
  • George Chin Jr +3
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.