EagerMap: A task mapping algorithm to improve communication and load balancing in clusters of multicore systems

Eduardo H.M. Cruz, Matthias Diener, Laércio L. Pilla, Philippe O.A. Navaux

Research output: Contribution to journalArticlepeer-review

Abstract

Communication between tasks and load imbalance have been identified as a major challenge for the performance and energy efficiency of parallel applications. A common way to improve communication is to increase its locality, that is, to reduce the distances of data transfers, prioritizing the usage of faster and more efficient local interconnections over remote ones. Regarding load imbalance, cores should execute a similar amount of work. An important problem to be solved in this context is how to determine an optimized mapping of tasks to cluster nodes and cores that increases the overall locality and load balancing. In this article, we propose the EagerMap algorithm to determine task mappings, which is based on a greedy heuristic to match application communication patterns to hardware hierarchies and which can also consider the task load. Compared to previous algorithms, EagerMap is faster, scales better, and supports more types of computer systems, while maintaining the same or better quality of the determined task mapping. EagerMap is therefore an interesting choice for task mapping on a variety of modern parallel architectures.

Original languageEnglish (US)
Article number17
JournalACM Transactions on Parallel Computing
Volume5
Issue number4
DOIs
StatePublished - Mar 2019

Keywords

  • Clusters
  • Communication
  • Locality
  • Task mapping

ASJC Scopus subject areas

  • Software
  • Modeling and Simulation
  • Hardware and Architecture
  • Computer Science Applications
  • Computational Theory and Mathematics

Fingerprint

Dive into the research topics of 'EagerMap: A task mapping algorithm to improve communication and load balancing in clusters of multicore systems'. Together they form a unique fingerprint.

Cite this