Geheugenhiërarchie en prestaties

Wat is het belangrijkste voordeel van stores die de cache omzeilen (non-temporal stores) bij het wegschrijven van grote data die eenmaal worden geschreven en daarna een tijd niet worden teruggelezen?

  1. ADe geschreven data blijven lang in de cache staan, zodat later lezen sneller gaat
  2. BDe cache wordt niet gevuld met data die niet worden hergebruikt
  3. CDe schrijfvolgorde wordt niet meer gegarandeerd, zodat programmafouten gemakkelijker te vinden zijn
Antwoord en toelichting tonen

Antwoord: B. De cache wordt niet gevuld met data die niet worden hergebruikt

Bij gewoon schrijven wordt vanwege write-allocate de regel eerst uit het hoofdgeheugen ingelezen en daarna beschreven; ook voor data die alleen worden geschreven ontstaat zo leesverkeer, en worden andere data die worden hergebruikt verdrongen. Non-temporal stores sturen schrijfacties gebundeld rechtstreeks naar het hoofdgeheugen, vervuilen de cache niet en besparen het onnodige inlezen. De geschreven data blijven niet in de cache staan, dus als ze direct worden teruggelezen wordt het juist trager. Het anders omgaan met volgorde is een bijwerking en geen voordeel.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Geheugenhiërarchie en prestaties

  1. Wat is de missratio wanneer de hitratio van de cache 95% is?
  2. Welke techniek stuurt, bij het inlezen van een gemiste regel uit het hoofdgeheugen, eerst het woord dat de CPU nodig heeft en pas daarna de rest?
  3. Waarom wordt het samenvoegen van de twee bovenstaande lussen tot één lus (loop fusion) bij grote N vaak sneller?
  4. Waarom treden bij het transponeren van een grote matrix (b[j][i] = a[i][j]) vaak veel cachemisses op, en welke combinatie met een gangbare oplossing is juist?
  5. Welke eigenschap geldt in de geheugenhiërarchie van een gangbare computer voor hogere niveaus (dichter bij de CPU)?

Vergelijkingen bij dit onderwerp