Evaluating OpenMP 3.0 Run Time Systems on Unbalanced Task Graphs

  • Authors:
  • Stephen L. Olivier;Jan F. Prins

  • Affiliations:
  • University of North Carolina at Chapel Hill, Chapel Hill, USA NC 27599;University of North Carolina at Chapel Hill, Chapel Hill, USA NC 27599

  • Venue:
  • IWOMP '09 Proceedings of the 5th International Workshop on OpenMP: Evolving OpenMP in an Age of Extreme Parallelism
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The UTS benchmark is used to evaluate task parallelism in OpenMP 3.0 as implemented in a number of recently released compilers and run-time systems. UTS performs parallel search of an irregular and unpredictable search space, as arises e.g. in combinatorial optimization problems. As such UTS presents a highly unbalanced task graph that challenges scheduling, load balancing, termination detection, and task coarsening strategies. Scalability and overheads are compared for OpenMP 3.0, Cilk, and an OpenMP implementation of the benchmark without tasks that performs all scheduling, load balancing, and termination detection explicitly. Current OpenMP 3.0 implementations generally exhibit poor behavior on the UTS benchmark.