Hiérarchie mémoire

Chaque défaut lit une ligne de 64 octets et la latence de la mémoire principale est de 100 ns ; si un seul défaut peut être traité à la fois, la bande passante de lecture plafonne à environ 0.64 GB/s. Si 10 défauts peuvent être traités simultanément, quelle est approximativement la bande passante ? (aucune autre contrainte)

  1. A0.064 GB/s
  2. B0.64 GB/s
  3. C6.4 GB/s
Afficher la réponse et l'explication

Réponse : C. 6.4 GB/s

La bande passante s’obtient en divisant la quantité de données en cours de traitement par la latence (loi de Little). Avec un seul défaut, 64 B ÷ 100 ns = 0.64 GB/s ; avec 10 défauts simultanés, 10 × 64 B ÷ 100 ns = 6.4 GB/s. Pour exploiter pleinement la bande passante de la mémoire principale, il ne suffit pas de réduire la latence : le parallélisme au niveau mémoire, qui traite simultanément de nombreux défauts, est indispensable. 0.64 GB/s reste la valeur pour un seul défaut, et 0.064 GB/s divise au contraire par 10.

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

Autres questions sur Hiérarchie mémoire

  1. Pour écrire de gros volumes de données qui ne seront pas relus avant longtemps, quel est le principal avantage des écritures qui contournent le cache (écritures non temporelles) ?
  2. Si le taux de succès du cache est de 95%, quel est le taux de défauts ?
  3. Quelle technique, lors du chargement depuis la mémoire principale d’une ligne en défaut, envoie d’abord le mot requis par le CPU puis le reste de la ligne ?
  4. Pourquoi la fusion des deux boucles ci-dessus en une seule (fusion de boucles) accélère-t-elle généralement le traitement lorsque N est grand ?
  5. Quelle combinaison de cause et de remède typique est correcte pour expliquer les nombreux défauts de cache lors de la transposition d’une grande matrice (b[j][i] = a[i][j]) ?

Comparatifs sur ce thème