Transformations de Synchronisation pour le Calcul Parallèle

Pedro Diniz (pedro@isi.edu)

Sommaire

À mesure que l’informatique parallèle fait partie de l’environnement informatique traditionnel, les compilateurs devront appliquer les optimisations de synchronisation requises pour fournir des logiciels parallèles efficaces. Ce travail décrit un nouveau cadre pour les optimisations de synchronisation et un nouvel ensemble de transformations pour les programmes qui implémentent des sections critiques à l’aide de verrous d’exclusion mutuels. Ces transformations permettent au compilateur de déplacer des constructions qui acquièrent et libèrent des verrous à la fois au sein des procédures et entre elles et d’éliminer les constructions d’acquisition et de libération.

Nous présentons un nouvel algorithme de synchronisation, l’élimination des verrous, pour réduire la surcharge de synchronisation. L’idée de base est de localiser les calculs qui acquièrent et relâchent de manière répétée le même verrou, puis utilisent les transformations pour obtenir des calculs équivalents qui acquièrent et relâchent le verrou une seule fois. Les résultats expérimentaux d’un compilateur de parallélisation pour les programmes basés sur les objets illustrent l’utilité pratique de cette optimisation: il améliore les performances globales de nos deux applications de référence par un facteur de 2,0 et un facteur de 1,1, ce qui réduit le temps de synchronisation à des niveaux négligeables.


Source de la page: https://www.isi.edu/~pedro/SYNC/sync.html
Traduit par Jean-Etienne Bergemer

Publié dans Edu

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *