Geheugenhiërarchie en prestaties

Waarom moeten cacheprestaties niet alleen op missratio, maar ook op gemiddelde geheugentoegangstijd worden vergeleken?

  1. AOmdat de missratio niet meetbaar is, maar de gemiddelde geheugentoegangstijd gemakkelijk te meten is
  2. BOmdat de missratio kan dalen terwijl de hittijd toeneemt, waardoor het gemiddeld trager kan worden
  3. COmdat de gemiddelde geheugentoegangstijd uitsluitend door de missratio wordt bepaald, ongeacht de hittijd
Antwoord en toelichting tonen

Antwoord: B. Omdat de missratio kan dalen terwijl de hittijd toeneemt, waardoor het gemiddeld trager kan worden

Een grotere associativiteit of capaciteit verlaagt de missratio, maar kan de hittijd verlengen. Vergelijk bijvoorbeeld hittijd 1 cyclus met missratio 5% en hittijd 2 cycli met missratio 4% bij een misstraf van 20 cycli: 1 + 0,05 × 20 = 2,0 tegenover 2 + 0,04 × 20 = 2,8, waarbij de variant met de lagere missratio trager is. De gemiddelde geheugentoegangstijd wordt bepaald door hittijd, missratio en misstraf samen. De missratio is wel meetbaar, bijvoorbeeld met prestatietellers.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Geheugenhiërarchie en prestaties

  1. Wanneer twee programma's afwisselend op dezelfde core worden uitgevoerd, kunnen ze trager zijn dan wanneer elk afzonderlijk draait. Welke verklaring is vanuit de cache bezien het meest passend?
  2. Welk voorbeeld illustreert temporele lokaliteit het best?
  3. Een tweedimensionale C-array a[i][j] wordt doorlopen met j als binnenste lus. Dit is doorgaans sneller dan met i als binnenste lus. Wat is de reden?
  4. Hoeveel bits heeft de tag bij een direct-mapped cache met 32-bits adressen, een capaciteit van 32 KB en een regelgrootte van 64 byte?
  5. Hoeveel sets heeft een 4-weg set-associatieve cache met 32-bits adressen, een capaciteit van 32 KB en een regelgrootte van 64 byte?

Vergelijkingen bij dit onderwerp