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
Early evaluation of branches via decoupled access-execute to enable super-block optimizations
Uppsala University, Disciplinary Domain of Science and Technology, Mathematics and Computer Science, Department of Information Technology.
2016 (English)Independent thesis Basic level (degree of Bachelor), 10 credits / 15 HE creditsStudent thesis
Abstract [en]

Modern CPUs rely on expensive branch predictors to speed up execution. Predictions nevertheless imply speculation, which is inherently costly, as mispredictions and re-execution of instructions can not only slow down execution but require extra energy expenditure. From the compiler perspective, the presence of branches complicates static analysis and hinders compile time optimizations. This work evaluates a software-only technique to remove branches and build super-blocks, thus, enabling more powerful compile-time optimizations, without the hardware support for dynamic branch prediction. Our approach eliminates branches and builds larger basic blocks using the Decoupled Access-Execute approach. Selected branches are hoisted and evaluated early in a so-called Access phase. If all branches are taken (or not-taken respectively), a simplified version of the code is run where these branches have been safely removed. Otherwise, the original version of the code is run. The end goal of this transformation is to enable optimizations on the simplified version. In the frame of this thesis, we have evaluated the benchmarks without enabling any additional optimizations and observed performance improvements in two out of eight benchmarks and performance penalties ranging between 4% to 27% on the remaining six. Based on these promising results, we expect that the optimizations triggered on the super-blocks to hide the small overhead and lead to significant performance improvements.

Place, publisher, year, edition, pages
2016. , 40 p.
Series
IT, 16075
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:uu:diva-304758OAI: oai:DiVA.org:uu-304758DiVA: diva2:1033917
Educational program
Bachelor Programme in Computer Science
Supervisors
Examiners
Available from: 2016-10-10 Created: 2016-10-10 Last updated: 2016-10-11Bibliographically approved

Open Access in DiVA

fulltext(630 kB)190 downloads
File information
File name FULLTEXT02.pdfFile size 630 kBChecksum SHA-512
f6bb271282878c5e3130d0f768ddac959e43c212af6a98d088c705cb3330280bd06ca503457e5bb39e1548c1a9afe385fd54a0d15113573e94aa9f592fa381da
Type fulltextMimetype application/pdf

By organisation
Department of Information Technology
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar
Total: 194 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 544 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