en fr An Empirical Study of Program Performance of OpenMP Applications on Multicore Platforms Une étude empirique des performances des applications OpenMP sur les plateformes multi-coeurs Reportar como inadecuado




en fr An Empirical Study of Program Performance of OpenMP Applications on Multicore Platforms Une étude empirique des performances des applications OpenMP sur les plateformes multi-coeurs - Descarga este documento en PDF. Documentación en PDF para descargar gratis. Disponible también para leer online.

1 ARPA PRISM - Parallélisme, Réseaux, Systèmes, Modélisation

Abstract : Current architectures of multicore machines are becoming increasingly complex due to hierarchical designs. Consequently, to achieve better performance stability, reproducibility and predictability requires a deep understanding of the interactions between multi-threaded applications and the underlying hardware. In this thesis, we study two important aspects for the performance of multi-threaded applications. We show that performance stability is an important criteria to consider in the process of performance evaluation, and thread placement is an effective technique in termes of program performance stability and improvement. We first study the variability of program execution times, defining a rigourous performance evaluation protocol, and analysing the reasons of such variability and its implications for program performance measurement. Then, we study the relation between the inter-thread data sharing and thread placement strategies on hierarchical machines. We consider various strategies where the same placement is applied for the whole execution of the program. While some of them rely on the characteristics of the application, others are not. We also present other thread placement strategies that allow thread migrations in order to exploit data sharing during different program phases.

Résumé : Les architectures des machines multi-coeurs actuelles deviennent de plus en plus complexes à cause du modèle de conception hiérarchique adopté. Par conséquent, assurer une meilleure stabilité, reproductibilité et prédictibilité des performances sur ces machines nécessite une compréhension approfondie des interactions qui existent entre les applications multi-threads et le matériel sous-jacent. Dans cette thèse, nous étudions deux aspects importants pour les performances des applications multi-threads. Nous montrons que la stabilité des performances est un critère important à considérer dans le processus d-évaluation des performances, et que le placement des threads est une technique efficace en termes de stabilité et d-amélioration des performances des programmes. Nous commençons par étudier la variabilité des temps d-exécution des programmes, nous définissons un protocole rigoureux d-évaluation des performances, puis nous analysons les raisons de cette variabilité et ses implications pour la mesure des performances. Ensuite, nous étudions la relation entre le partage des données entre threads et les stratégies de placement des threads sur machines hiérarchiques. Nous considérons plusieurs stratégies où le même placement est appliqué pour toute la durée d-exécution du programme. Alors que certaines reposent sur les caractéristiques des applications, d-autres non. Nous présentons aussi d-autres stratégies de placement des threads autorisant la migration des threads afin d-exploiter le partage des données au cours des différentes phases d-un programme.

en fr

Keywords : thread affinity data sharing data locality multicore processors parallelism performance evaluation

Mots-clés : OpenMP partage de données localité de données affinité entre threads multicoeurs parallélisme évaluation des performances





Autor: Abdelhafid Mazouz -

Fuente: https://hal.archives-ouvertes.fr/



DESCARGAR PDF




Documentos relacionados