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?
- ADe geschreven data blijven lang in de cache staan, zodat later lezen sneller gaat
- BDe cache wordt niet gevuld met data die niet worden hergebruikt
- 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.