Locality-optimized mixed static/dynamic scheduling for improving load balancing on SMPs

Vivek Kale, Amanda Randles, William D. Gropp

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

Abstract

Application performance can be degraded significantly due to node-local load imbalances during application execution. Prior work suggested using a mixed static/dynamic scheduling approach for handling this problem, specifically in the context of fine-grained, transient load imbalances. Here, we consider an alternate strategy for more general load imbalances where fine-grained, transient load imbalance may be coupled with coarse-grained load imbalance. Specifically, we implement a scheduling scheme in which we modify the data layout in mixed static/dynamic scheduling, and add an additional tuned constraint in the dequeue function of our scheduler. Through experimentation of an n-body particle simulation code on modern multi-core architectures, our technique gives a 19.4% performance gain over dynamic scheduling, and an overall 48.6% performance gain over standard static scheduling.

Original languageEnglish (US)
Title of host publicationProceedings of the 21st European MPI Users' Group Meeting, EuroMPI/ASIA 2014
PublisherAssociation for Computing Machinery
Pages115-116
Number of pages2
ISBN (Electronic)9781450328753
DOIs
StatePublished - Sep 9 2014
Event21st European MPI Users' Group Meeting, EuroMPI/ASIA 2014 - Kyoto, Japan
Duration: Sep 9 2014Sep 12 2014

Publication series

NameACM International Conference Proceeding Series
Volume09-12-September-2014

Other

Other21st European MPI Users' Group Meeting, EuroMPI/ASIA 2014
CountryJapan
CityKyoto
Period9/9/149/12/14

ASJC Scopus subject areas

  • Software
  • Human-Computer Interaction
  • Computer Vision and Pattern Recognition
  • Computer Networks and Communications

Fingerprint Dive into the research topics of 'Locality-optimized mixed static/dynamic scheduling for improving load balancing on SMPs'. Together they form a unique fingerprint.

Cite this