Task-parallel programming on NUMA architectures

  • Authors:
  • Christian Terboven;Dirk Schmidl;Tim Cramer;Dieter an Mey

  • Affiliations:
  • Center for Computing and Communication, JARA, RWTH Aachen University, Germany;Center for Computing and Communication, JARA, RWTH Aachen University, Germany;Center for Computing and Communication, JARA, RWTH Aachen University, Germany;Center for Computing and Communication, JARA, RWTH Aachen University, Germany

  • Venue:
  • Euro-Par'12 Proceedings of the 18th international conference on Parallel Processing
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

The multicore era has led to a renaissance of shared memory parallel programming models. Moreover, the introduction of task-level parallelization raises the level of abstraction compared to thread-centric expression of parallelism. However, tasks might exhibit poor performance on NUMA systems if locality cannot be controlled and non-local data is accessed. This work investigates various approaches to express task-parallelism using the OpenMP tasking model, from a programmer's point of view. We describe and compare task creation strategies and devise methods to preserve locality on NUMA architectures while optimizing the degree of parallelism. Our proposals are evaluated on reasonably large NUMA systems with both important application kernels as well as real-world simulation codes.