Multicœur et synchronisation
Quelle description de la synchronisation par barrière utilisée dans les programmes parallèles est correcte ?
- AElle crée une partie dans laquelle un seul thread peut entrer à la fois
- BElle fait attendre les threads arrivés en premier jusqu’à ce que tous les threads aient atteint ce point
- CC’est une instruction qui empêche le réordonnancement des opérations mémoire
Afficher la réponse et l'explication
Réponse : B. Elle fait attendre les threads arrivés en premier jusqu’à ce que tous les threads aient atteint ce point
Dans une simulation par exemple, tous les threads doivent achever le calcul d’une étape avant de passer à la suivante. Avec une barrière, chaque thread s’arrête au point de barrière, et tous repartent lorsque le dernier thread arrive. Si la charge de calcul est déséquilibrée, les threads rapides attendent plus longtemps les threads lents ; répartir le travail équitablement est donc essentiel aux performances.
Continuer : 9 autres questions sur Multicœur et synchronisation