Multicœur et synchronisation
Quelle affirmation sur les modèles de cohérence mémoire faibles comme ceux d’ARM ou de RISC-V (RVWMO) est correcte ?
- AIls autorisent de nombreux réordonnancements de lectures et écritures sur des adresses différentes, et le programme insère des barrières, etc., là où l’ordre est nécessaire
- BN’autorisant aucun réordonnancement, ils n’ont pas d’instruction de barrière
- CIls ne garantissent même pas l’ordre des lectures et écritures sur une même adresse
Afficher la réponse et l'explication
Réponse : A. Ils autorisent de nombreux réordonnancements de lectures et écritures sur des adresses différentes, et le programme insère des barrières, etc., là où l’ordre est nécessaire
Dans un modèle faible, le matériel peut réordonner assez librement les lectures et écritures sur des adresses différentes sans dépendance. Cela simplifie les circuits et améliore performances et efficacité énergétique, mais pour échanger des données avec d’autres cœurs, il faut expliciter l’ordre avec des instructions fence ou des lectures et écritures à sémantique acquire/release. Dans les langages de haut niveau, l’emploi de variables atomiques fait générer au compilateur les instructions appropriées.
Continuer : 9 autres questions sur Multicœur et synchronisation