Programmation GPU

Quelle est la définition de la mémoire unifiée (unified memory) de CUDA ?

  1. AUne mémoire utilisable depuis le CPU et le GPU avec le même pointeur, les données se déplaçant automatiquement selon les besoins
  2. BLa réunion physique des puces CPU et GPU en une seule
  3. CLe passage de toute la mémoire GPU en lecture seule
Afficher la réponse et l'explication

Réponse : A. Une mémoire utilisable depuis le CPU et le GPU avec le même pointeur, les données se déplaçant automatiquement selon les besoins

Avec la mémoire unifiée, la zone allouée est accessible depuis le CPU comme depuis le GPU avec le même pointeur, et les données migrent par pages vers le côté qui y accède. Le programme est simplifié et des données plus grandes que la mémoire GPU sont plus faciles à manipuler. Chaque migration provoquant toutefois un défaut de page et un transfert, on recourt, lorsque les performances comptent, à des directives de migration anticipée.

S'entraîner sur ce thème Retour au thème

Autres questions sur Programmation GPU

  1. Lors de l'addition élément par élément de deux grands tableaux sur GPU (c[i] = a[i] + b[i]), qu'est-ce qui détermine principalement les performances ?
  2. Pourquoi, sur de nombreux GPU grand public pour le jeu, les performances en double précision (FP64) sont-elles bien inférieures (par exemple quelques dizaines de fois) à celles en simple précision (FP32) ?
  3. Quelle est la caractéristique des Tensor Cores (unités de calcul matriciel) des GPU récents ?
  4. En calcul en précision mixte sur GPU, pourquoi effectue-t-on souvent les multiplications en faible précision (FP16, etc.) et l'accumulation en FP32 ?
  5. La somme en virgule flottante des mêmes données calculée sur GPU diffère légèrement au dernier chiffre d'une exécution à l'autre. Quelle est la cause la plus probable ?

Comparatifs sur ce thème