Software hint to improve the branch target prediction accuracy
The present invention relates in general to methods for predicting branch target addresses in speculative instruction execution. A field is defined in branch instructions which is interpreted by software as "Hint" bits and these bits are used to signal the processor of special circumstance...
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Patent |
Sprache: | eng |
Online-Zugang: | Volltext bestellen |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | |
---|---|
container_issue | |
container_start_page | |
container_title | |
container_volume | |
creator | Hay, Robert William Sinharoy, Balaram |
description | The present invention relates in general to methods for predicting branch target addresses in speculative instruction execution.
A field is defined in branch instructions which is interpreted by software as "Hint" bits and these bits are used to signal the processor of special circumstances that may arise when doing speculative branch instruction execution to enable better branch address prediction accuracy and a reduction in link stack corruption which improves overall execution times. A programmer or compiler determines if a branch instruction usage fits in the context for a Hint action. If so, the compiler or programmer, using assembly/machine language, sets Hint bits in the branch instruction when it is compiled. If the branch is later speculatively executed, the processor decodes the Hint bits and executes and a hardware action corresponding the decode of the Hint bits. These Hints include four specific Hint actions, however, the field reserved for Hint bits is five bit wide reserving up to thirty-two specific Hint cases may be specified. These Hint cases (or Hint bits) may be interpreted differently for each type of branch instruction supported. |
format | Patent |
fullrecord | <record><control><sourceid>uspatents_EFH</sourceid><recordid>TN_cdi_uspatents_grants_06823447</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>06823447</sourcerecordid><originalsourceid>FETCH-uspatents_grants_068234473</originalsourceid><addsrcrecordid>eNrjZLALzk8rKU8sSlXIyMwrUSjJV8jMLSjKL0tVKMlIVUgqSsxLzlAoSSxKTy1RKChKTclMLsnMz1NITE4uLUpMruRhYE1LzClO5YXS3AwKbq4hzh66pcUFiSWpeSXF8elAM4CUgZmFkbGJibkxEUoAN3sxrA</addsrcrecordid><sourcetype>Open Access Repository</sourcetype><iscdi>true</iscdi><recordtype>patent</recordtype></control><display><type>patent</type><title>Software hint to improve the branch target prediction accuracy</title><source>USPTO Issued Patents</source><creator>Hay, Robert William ; Sinharoy, Balaram</creator><creatorcontrib>Hay, Robert William ; Sinharoy, Balaram ; International Business Machines Corporation</creatorcontrib><description>The present invention relates in general to methods for predicting branch target addresses in speculative instruction execution.
A field is defined in branch instructions which is interpreted by software as "Hint" bits and these bits are used to signal the processor of special circumstances that may arise when doing speculative branch instruction execution to enable better branch address prediction accuracy and a reduction in link stack corruption which improves overall execution times. A programmer or compiler determines if a branch instruction usage fits in the context for a Hint action. If so, the compiler or programmer, using assembly/machine language, sets Hint bits in the branch instruction when it is compiled. If the branch is later speculatively executed, the processor decodes the Hint bits and executes and a hardware action corresponding the decode of the Hint bits. These Hints include four specific Hint actions, however, the field reserved for Hint bits is five bit wide reserving up to thirty-two specific Hint cases may be specified. These Hint cases (or Hint bits) may be interpreted differently for each type of branch instruction supported.</description><language>eng</language><creationdate>2004</creationdate><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktopdf>$$Uhttps://image-ppubs.uspto.gov/dirsearch-public/print/downloadPdf/6823447$$EPDF$$P50$$Guspatents$$Hfree_for_read</linktopdf><link.rule.ids>230,308,780,802,885,64039</link.rule.ids><linktorsrc>$$Uhttps://image-ppubs.uspto.gov/dirsearch-public/print/downloadPdf/6823447$$EView_record_in_USPTO$$FView_record_in_$$GUSPTO$$Hfree_for_read</linktorsrc></links><search><creatorcontrib>Hay, Robert William</creatorcontrib><creatorcontrib>Sinharoy, Balaram</creatorcontrib><creatorcontrib>International Business Machines Corporation</creatorcontrib><title>Software hint to improve the branch target prediction accuracy</title><description>The present invention relates in general to methods for predicting branch target addresses in speculative instruction execution.
A field is defined in branch instructions which is interpreted by software as "Hint" bits and these bits are used to signal the processor of special circumstances that may arise when doing speculative branch instruction execution to enable better branch address prediction accuracy and a reduction in link stack corruption which improves overall execution times. A programmer or compiler determines if a branch instruction usage fits in the context for a Hint action. If so, the compiler or programmer, using assembly/machine language, sets Hint bits in the branch instruction when it is compiled. If the branch is later speculatively executed, the processor decodes the Hint bits and executes and a hardware action corresponding the decode of the Hint bits. These Hints include four specific Hint actions, however, the field reserved for Hint bits is five bit wide reserving up to thirty-two specific Hint cases may be specified. These Hint cases (or Hint bits) may be interpreted differently for each type of branch instruction supported.</description><fulltext>true</fulltext><rsrctype>patent</rsrctype><creationdate>2004</creationdate><recordtype>patent</recordtype><sourceid>EFH</sourceid><recordid>eNrjZLALzk8rKU8sSlXIyMwrUSjJV8jMLSjKL0tVKMlIVUgqSsxLzlAoSSxKTy1RKChKTclMLsnMz1NITE4uLUpMruRhYE1LzClO5YXS3AwKbq4hzh66pcUFiSWpeSXF8elAM4CUgZmFkbGJibkxEUoAN3sxrA</recordid><startdate>20041123</startdate><enddate>20041123</enddate><creator>Hay, Robert William</creator><creator>Sinharoy, Balaram</creator><scope>EFH</scope></search><sort><creationdate>20041123</creationdate><title>Software hint to improve the branch target prediction accuracy</title><author>Hay, Robert William ; Sinharoy, Balaram</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-uspatents_grants_068234473</frbrgroupid><rsrctype>patents</rsrctype><prefilter>patents</prefilter><language>eng</language><creationdate>2004</creationdate><toplevel>online_resources</toplevel><creatorcontrib>Hay, Robert William</creatorcontrib><creatorcontrib>Sinharoy, Balaram</creatorcontrib><creatorcontrib>International Business Machines Corporation</creatorcontrib><collection>USPTO Issued Patents</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Hay, Robert William</au><au>Sinharoy, Balaram</au><aucorp>International Business Machines Corporation</aucorp><format>patent</format><genre>patent</genre><ristype>GEN</ristype><title>Software hint to improve the branch target prediction accuracy</title><date>2004-11-23</date><risdate>2004</risdate><abstract>The present invention relates in general to methods for predicting branch target addresses in speculative instruction execution.
A field is defined in branch instructions which is interpreted by software as "Hint" bits and these bits are used to signal the processor of special circumstances that may arise when doing speculative branch instruction execution to enable better branch address prediction accuracy and a reduction in link stack corruption which improves overall execution times. A programmer or compiler determines if a branch instruction usage fits in the context for a Hint action. If so, the compiler or programmer, using assembly/machine language, sets Hint bits in the branch instruction when it is compiled. If the branch is later speculatively executed, the processor decodes the Hint bits and executes and a hardware action corresponding the decode of the Hint bits. These Hints include four specific Hint actions, however, the field reserved for Hint bits is five bit wide reserving up to thirty-two specific Hint cases may be specified. These Hint cases (or Hint bits) may be interpreted differently for each type of branch instruction supported.</abstract><oa>free_for_read</oa></addata></record> |
fulltext | fulltext_linktorsrc |
identifier | |
ispartof | |
issn | |
language | eng |
recordid | cdi_uspatents_grants_06823447 |
source | USPTO Issued Patents |
title | Software hint to improve the branch target prediction accuracy |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-19T09%3A09%3A22IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-uspatents_EFH&rft_val_fmt=info:ofi/fmt:kev:mtx:patent&rft.genre=patent&rft.au=Hay,%20Robert%20William&rft.aucorp=International%20Business%20Machines%20Corporation&rft.date=2004-11-23&rft_id=info:doi/&rft_dat=%3Cuspatents_EFH%3E06823447%3C/uspatents_EFH%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true |