uu.seUppsala University Publications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
Blasting Through The Front-End Bottleneck With Shotgun
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology, Computer Systems. Univ Edinburgh, Edinburgh, Midlothian, Scotland.
Univ Edinburgh, Edinburgh, Midlothian, Scotland.
Univ Edinburgh, Edinburgh, Midlothian, Scotland.
2018 (English)In: ACM Sigplan Notices, 2018, Vol. 53, no 2, p. 30-42Conference paper, Published paper (Refereed)
Abstract [en]

The front-end bottleneck is a well-established problem in server workloads owing to their deep software stacks and large instruction working sets. Despite years of research into effective L1-I and BTB prefetching, state-of-the-art techniques force a trade-off between performance and metadata storage costs. This work introduces Shotgun, a BTB-directed front-end prefetcher powered by a new BTB organization that maintains a logical map of an application's instruction footprint, which enables high-efficacy prefetching at low storage cost. To map active code regions, Shotgun precisely tracks an application's global control flow (e.g., function and trap routine entry points) and summarizes local control flow within each code region. Because the local control flow enjoys high spatial locality, with most functions comprised of a handful of instruction cache blocks, it lends itself to a compact region-based encoding. Meanwhile, the global control flow is naturally captured by the application's unconditional branch working set (calls, returns, traps). Based on these insights, Shotgun devotes the bulk of its BTB capacity to branches responsible for the global control flow and a spatial encoding of their target regions. By effectively capturing a map of the application's instruction footprint in the BTB, Shotgun enables highly effective BTB-directed prefetching. Using a storage budget equivalent to a conventional BTB, Shotgun outperforms the state-of-the-art BTB-directed front-end prefetcher by up to 14% on a set of varied commercial workloads.

Place, publisher, year, edition, pages
2018. Vol. 53, no 2, p. 30-42
Keywords [en]
Servers, Prefeteching, Instruction Cache, Branch Target Buffer (BTB), Control Flow
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:uu:diva-373085DOI: 10.1145/3173162.3173178ISI: 000452465200003OAI: oai:DiVA.org:uu-373085DiVA, id: diva2:1277683
Conference
23rd International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), MAR 24-28, 2018, Williamsburg, VA
Available from: 2019-01-11 Created: 2019-01-11 Last updated: 2019-01-11Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full text

Authority records BETA

Kumar, Rakesh

Search in DiVA

By author/editor
Kumar, Rakesh
By organisation
Computer Systems
Computer Systems

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 5 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf