1 / 30

Föreläsning 5 måndag 5e november 2007

Datorsystem 1 och Datorarkitektur 1. Datorsystem 1 och Datorarkitektur 1. Föreläsning 5 måndag 5e november 2007. Föreläsning 5 måndag 5e november 2007. Dessa saker vill vi ha nära till hands. Vissa saker använder vi ofta. Litet är snabbt Stort är långsamt. Storleken har betydelse.

Download Presentation

Föreläsning 5 måndag 5e november 2007

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Datorsystem 1 och Datorarkitektur 1 Datorsystem 1 och Datorarkitektur 1 Föreläsning 5 måndag 5e november 2007 Föreläsning 5 måndag 5e november 2007

  2. Dessa saker vill vi ha nära till hands Vissa saker använder vi ofta Litet är snabbt Stort är långsamt Storleken har betydelse Samma principer gäller för hur en dator använder sitt minne. Vadå ofta? Vadå vissa saker?

  3. Temporal Locality If a data location is referenced then it is very likely to be accessed soon again. Lista med de senast slagna nummren.

  4. Spatial Locality If a data location is referenced, data locations with nearby addresses are likely to be accessed soon. De flesta av oss läser böcker från början till slut, dvs efter sida n läser vi sida n+1 osv.

  5. Level 0 – register! • Minne i flera nivåer (hierarki): • snabbt och litet (dyrt) och litet minne nära processorn • långsamt och stort (billigt) minne längre bort från processorn.

  6. Cache från franska cacher - "gömma“. A hiding place, esp. of goods, treasure, etc.

  7. Example – Read Data 10110 mod 8 = 110 Y

  8. Example – Read Data 11010 mod 8 = 010 Y

  9. Example – Read Data HIT

  10. Example – Read Data HIT

  11. Example – Read Data Y MISS

  12. Example – Read Data 10 [10010] MISS

  13. OK, så långt har vi utnyttjat temporal locality. Vore bra om vi kunde utnyttja även spatial locality…

  14. Cache Size

  15. Example continued... [10010] ???

  16. Example continued... Men nu suddade vi ju ut det som den förra operationen skrev… 11 [11010] MISS

  17. Direkt-mappad cache Ett block i minnet mappas till exakt ett bestämt block i cache. Enkel hårdvara men data kan tvingas ut ur cachet i onödan… Partiellt associativt cache (set-associative) Ett block i minnet kan mappas till två eller flera block i cache. En kompromiss! Komplicerad hårdvara för att kolla om data finns i cache eller inte… Fullständigt associativt cache Ett block i minnet kan mappas till vilket block som helst cache.

  18. Vilket block skall vi slänga ut ur cachet när ett nytt vill in?

  19. Direkt-mappad cache Ett block i minnet mappas till exakt ett bestämt block i cache. Enkel – vi har inget val! Partiellt associativt cache (set-associative) Ett block i minnet kan mappas till två eller flera block i cache. Kan endast välja att kasta ut något från det set som blocket tillhör. Kan välja vilket som helst… vilket är det bästa valet? Fullständigt associativt cache Ett block i minnet kan mappas till vilket block som helst cache.

  20. Men vilket block skall vi välja ur ett set? LRU (Least Recently Used) Kasta ut det block som förblivit orört under längs tid!

More Related