• norsk
    • English
  • English 
    • norsk
    • English
  • Login
View Item 
  •   Home
  • Fakultet for informasjonsteknologi og elektroteknikk (IE)
  • Institutt for datateknologi og informatikk
  • View Item
  •   Home
  • Fakultet for informasjonsteknologi og elektroteknikk (IE)
  • Institutt for datateknologi og informatikk
  • View Item
JavaScript is disabled for your browser. Some features of this site may not work without it.

Improving the first-level cache bandwidth in the Berkeley Out-of-Order Machine

Nesset, Erling Feet
Master thesis
Thumbnail
View/Open
no.ntnu:inspera:142737689:35331013.pdf (7.544Mb)
URI
https://hdl.handle.net/11250/3092171
Date
2023
Metadata
Show full item record
Collections
  • Institutt for datateknologi og informatikk [6317]
Abstract
Ettersom moderne prosessorer de siste tiårene har truffet minnegapet, har de brukt minne-nivå-parallelisme(MLP) for skjule forskjellen i ytelse mellom prosessoren og minnet. For å utnytte MLP trenger prosessorer nok båndbredde og båndbredde har derfor blitt viktig for ytelsen til prosessorer. I denne oppgaven analyserer jeg minnebåndbredden Berkeley Out-of-Order Machine(BOOM)-kjernen klarer å oppnå til forskjellige deler av minnehierarkiet. Ved å sammenligne denne båndbredden med hva BOOM-en teoretisk sett bør kunne oppnå identifiserer jeg en flaskehals i nivå 1 hurtigbufferens tilbakeskriving av skitne hurtigbufferlinjer. Denne flaskehalsen reduserer minnebåndbredden til programmer med mye tilbakeskriving betraktelig. Jeg optimaliserer tilbakeskrivingen ved å pipeline enheten som håndterer tilbakeskriving, slik at den kan lese ut en skitten linje fra cachen samtidig som den skriver tilbake en annen linje. Dette øker båndbredden til nivå 2 hurtigbufferen med 30\% og båndbredden til hovedminnet med 20\%. Denne optimaliseringen øker ytelsen til LBM med prefetching i programvare med 3,7\% for under 0.2\% økning i ressursbruk. I tillegg oppdager jeg en vranglås i BOOMen forårsaket av at L2 hurtigbufferen ikke bekrefeter en tilbakeskrevet skitten hurtigbufferlinje når flere hurtigbufferlinjer blir forespurt mens den skitne linjen blir skrevet tilbake. Vranglåsen unngås ved å ikke forespørre nye hurtigbufferlinjer mens en linje blir skrevet tilbake.
 
As processors have hit the memory wall, they have used memory-level-parallelism (MLP) to hide memory latency. To exploit MLP, processors need sufficient memory bandwidth and as such bandwidth has become integral to processor performance. I thoroughly analyze the bandwidth the Berkeley Out-of-Order Machine (BOOM) can achieve to different levels of its memory hierarchy. By comparing this bandwidth to what should be theoretically possible, I identify a bottleneck in the L1 cache's writeback handling. This bottleneck significantly reduces bandwidth for eviction-heavy applications. I optimise the writeback handling by pipelining the writeback unit, enabling it to read dirty cache lines from the cache while writing back another cache line. This improves write bandwidth by 30\% to the L2 and 20\% to the main memory. This increase in bandwidth reduces the execution time of the LBM benchmark with software prefetching by 3,7\% for under a 0.2\% increase in resource consumption. In addition, I discovered a deadlock in the BOOM caused by the L2 not acknowledging a writeback when multiple new cache lines are requested while dirty cache lines are written back. The deadlock is avoided by not requesting new cache lines when dirty cache lines are being written back.
 
Publisher
NTNU

Contact Us | Send Feedback

Privacy policy
DSpace software copyright © 2002-2019  DuraSpace

Service from  Unit
 

 

Browse

ArchiveCommunities & CollectionsBy Issue DateAuthorsTitlesSubjectsDocument TypesJournalsThis CollectionBy Issue DateAuthorsTitlesSubjectsDocument TypesJournals

My Account

Login

Statistics

View Usage Statistics

Contact Us | Send Feedback

Privacy policy
DSpace software copyright © 2002-2019  DuraSpace

Service from  Unit