Performance implications of synchronization structure in parallel programming

  • Authors:
  • Arturo González-Escribano;Arjan J. C. van Gemund;Valentín Cardeñoso-Payo

  • Affiliations:
  • Dept. de Informática, Universidad de Valladolid, E.T.I.T. Campus Miguel Delibes, 47011 Valladolid, Spain;Faculty of Electrical Engineering, Mathematics, and Computer Science, P.O. Box 5031, NL-2600 GA Delft, The Netherlands;Dept. de Informática, Universidad de Valladolid, E.T.I.T. Campus Miguel Delibes, 47011 Valladolid, Spain

  • Venue:
  • Parallel Computing
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

The restricted synchronization structure of so-called structured parallel programming paradigms has an advantageous effect on programmer productivity, cost modeling, and scheduling complexity. However, imposing these restrictions can lead to a loss of parallelism, compared to using a programming approach that does not impose synchronization structure. In this paper we study the potential loss of parallelism when expressing parallel computations into a programming model which limits the computation graph (DAG) to series-parallel topology, which characterizes all well-known structured programming models. We present an analytical model that approximately captures this loss of parallelism in terms of simple parameters that are related to DAG topology and workload distribution. We validate the model using a wide range of synthetic and real-world parallel computations running on shared and distributed-memory machines. Although the loss of parallelism is theoretically unbounded, our measurements show that for all above applications the performance loss due to choosing a series-parallel structured model is invariably limited up to 10%. In all cases, the loss of parallelism is predictable provided the topology and workload variability of the DAG are known.