Geheugenhiërarchie en prestaties
Welke maatregel is effectief om cachemisses te verminderen die optreden bij de allereerste toegang van een programma tot bepaalde data?
- AData vooraf inlezen met prefetching
- BDe associativiteit (aantal wegen) van de cache verdubbelen
- CAlleen de capaciteit van de cache verdubbelen
Antwoord en toelichting tonen
Antwoord: A. Data vooraf inlezen met prefetching
Een compulsory miss bij de eerste toegang treedt op doordat de data nog nooit in de cache hebben gestaan, dus een grotere capaciteit of associativiteit helpt niet. Misses kunnen wel worden verminderd door data vóór het moment van gebruik met prefetching in te lezen, of door grotere regels te gebruiken zodat nabijgelegen data in één keer worden binnengehaald. Een hogere associativiteit vermindert conflictmisses om dezelfde set, en een grotere capaciteit vermindert capaciteitsmisses wanneer de working set te groot is.