Register promotion by sparse partial redundancy elimination of loads and stores

An algorithm for register promotion is presented based on the observation that the circumstances for promoting a memory location's value to register coincide with situations where the program exhibits partial redundancy between accesses to the memory location. The recent SSAPRE algorithm for el...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Lo, Raymond, Chow, Fred, Kennedy, Robert, Liu, Shin-Ming, Tu, Peng
Format: Tagungsbericht
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 37
container_issue
container_start_page 26
container_title
container_volume
creator Lo, Raymond
Chow, Fred
Kennedy, Robert
Liu, Shin-Ming
Tu, Peng
description An algorithm for register promotion is presented based on the observation that the circumstances for promoting a memory location's value to register coincide with situations where the program exhibits partial redundancy between accesses to the memory location. The recent SSAPRE algorithm for eliminating partial redundancy using a sparse SSA representation forms the foundation for the present algorithm to eliminate redundancy among memory accesses, enabling us to achieve both computational and live range optimality in our register promotion results. We discuss how to effect speculative code motion in the SSAPRE framework. We present two different algorithms for performing speculative code motion: the conservative speculation algorithm used in the absence of profile data, and the the profile-driven speculation algorithm used when profile data are available. We define the static single use (SSU) form and develop the dual of the SSAPRE algorithm, called SSUPRE, to perform the partial redundancy elimination of stores. We provide measurement data on the SPECint95 benchmark suite to demonstrate the effectiveness of our register promotion approach in removing loads and stores. We also study the relative performance of the different speculative code motion strategies when applied to scalar loads and stores.
doi_str_mv 10.1145/277650.277659
format Conference Proceeding
fullrecord <record><control><sourceid>proquest_acm_b</sourceid><recordid>TN_cdi_proquest_miscellaneous_31516223</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>31516223</sourcerecordid><originalsourceid>FETCH-LOGICAL-a167t-77bbcbdfeb9b7bae47d375a64190dc4936ad9e6599f5bc89382ab1f383378ae83</originalsourceid><addsrcrecordid>eNqNkDFPwzAQRi0BElXpyO6JiRQ7Tnz2iCqgSJUqIZitc3xBgSQucTr03xNaJFZuuLc8fbr7GLuWYillUd7lALoUyyPsGVtYMMJYsNIa0OdsJpTOM6kKcckWKX2IaQCskeWMbV_ovUkjDXw3xC6OTey5P_C0wyERn_bYYMsHCvs-YF8dOLVN1_R4FGPN24ghcewDT2McKF2xixrbRItfztnb48Prap1ttk_Pq_tNhlLDmAF4X_lQk7cePFIBQUGJupBWhKqwSmOwNH1j69JXxiqTo5e1MkqBQTJqzm5OudPZX3tKo-uaVFHbYk9xn5ySpdR5rv5ErDrnY_xMTgr3U5s71XaCncTbf4nODw3V6htWY2yt</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype><pqid>31516223</pqid></control><display><type>conference_proceeding</type><title>Register promotion by sparse partial redundancy elimination of loads and stores</title><source>ACM Digital Library</source><creator>Lo, Raymond ; Chow, Fred ; Kennedy, Robert ; Liu, Shin-Ming ; Tu, Peng</creator><contributor>Berman, A. Michael</contributor><creatorcontrib>Lo, Raymond ; Chow, Fred ; Kennedy, Robert ; Liu, Shin-Ming ; Tu, Peng ; Berman, A. Michael</creatorcontrib><description>An algorithm for register promotion is presented based on the observation that the circumstances for promoting a memory location's value to register coincide with situations where the program exhibits partial redundancy between accesses to the memory location. The recent SSAPRE algorithm for eliminating partial redundancy using a sparse SSA representation forms the foundation for the present algorithm to eliminate redundancy among memory accesses, enabling us to achieve both computational and live range optimality in our register promotion results. We discuss how to effect speculative code motion in the SSAPRE framework. We present two different algorithms for performing speculative code motion: the conservative speculation algorithm used in the absence of profile data, and the the profile-driven speculation algorithm used when profile data are available. We define the static single use (SSU) form and develop the dual of the SSAPRE algorithm, called SSUPRE, to perform the partial redundancy elimination of stores. We provide measurement data on the SPECint95 benchmark suite to demonstrate the effectiveness of our register promotion approach in removing loads and stores. We also study the relative performance of the different speculative code motion strategies when applied to scalar loads and stores.</description><identifier>ISSN: 0362-1340</identifier><identifier>ISBN: 9780897919876</identifier><identifier>ISBN: 0897919874</identifier><identifier>DOI: 10.1145/277650.277659</identifier><language>eng</language><publisher>New York, NY, USA: ACM</publisher><subject>General and reference -- Cross-computing tools and techniques -- Performance ; Mathematics of computing -- Discrete mathematics -- Graph theory -- Graph algorithms ; Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software selection and adaptation ; Software and its engineering -- Software notations and tools -- Compilers ; Software and its engineering -- Software organization and properties -- Extra-functional properties -- Software performance</subject><ispartof>Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, 1998, p.26-37</ispartof><rights>1998 ACM</rights><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>309,310,780,784,789,790,23930,23931,25140,27925</link.rule.ids></links><search><contributor>Berman, A. Michael</contributor><creatorcontrib>Lo, Raymond</creatorcontrib><creatorcontrib>Chow, Fred</creatorcontrib><creatorcontrib>Kennedy, Robert</creatorcontrib><creatorcontrib>Liu, Shin-Ming</creatorcontrib><creatorcontrib>Tu, Peng</creatorcontrib><title>Register promotion by sparse partial redundancy elimination of loads and stores</title><title>Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation</title><description>An algorithm for register promotion is presented based on the observation that the circumstances for promoting a memory location's value to register coincide with situations where the program exhibits partial redundancy between accesses to the memory location. The recent SSAPRE algorithm for eliminating partial redundancy using a sparse SSA representation forms the foundation for the present algorithm to eliminate redundancy among memory accesses, enabling us to achieve both computational and live range optimality in our register promotion results. We discuss how to effect speculative code motion in the SSAPRE framework. We present two different algorithms for performing speculative code motion: the conservative speculation algorithm used in the absence of profile data, and the the profile-driven speculation algorithm used when profile data are available. We define the static single use (SSU) form and develop the dual of the SSAPRE algorithm, called SSUPRE, to perform the partial redundancy elimination of stores. We provide measurement data on the SPECint95 benchmark suite to demonstrate the effectiveness of our register promotion approach in removing loads and stores. We also study the relative performance of the different speculative code motion strategies when applied to scalar loads and stores.</description><subject>General and reference -- Cross-computing tools and techniques -- Performance</subject><subject>Mathematics of computing -- Discrete mathematics -- Graph theory -- Graph algorithms</subject><subject>Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software selection and adaptation</subject><subject>Software and its engineering -- Software notations and tools -- Compilers</subject><subject>Software and its engineering -- Software organization and properties -- Extra-functional properties -- Software performance</subject><issn>0362-1340</issn><isbn>9780897919876</isbn><isbn>0897919874</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>1998</creationdate><recordtype>conference_proceeding</recordtype><recordid>eNqNkDFPwzAQRi0BElXpyO6JiRQ7Tnz2iCqgSJUqIZitc3xBgSQucTr03xNaJFZuuLc8fbr7GLuWYillUd7lALoUyyPsGVtYMMJYsNIa0OdsJpTOM6kKcckWKX2IaQCskeWMbV_ovUkjDXw3xC6OTey5P_C0wyERn_bYYMsHCvs-YF8dOLVN1_R4FGPN24ghcewDT2McKF2xixrbRItfztnb48Prap1ttk_Pq_tNhlLDmAF4X_lQk7cePFIBQUGJupBWhKqwSmOwNH1j69JXxiqTo5e1MkqBQTJqzm5OudPZX3tKo-uaVFHbYk9xn5ySpdR5rv5ErDrnY_xMTgr3U5s71XaCncTbf4nODw3V6htWY2yt</recordid><startdate>19980501</startdate><enddate>19980501</enddate><creator>Lo, Raymond</creator><creator>Chow, Fred</creator><creator>Kennedy, Robert</creator><creator>Liu, Shin-Ming</creator><creator>Tu, Peng</creator><general>ACM</general><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>19980501</creationdate><title>Register promotion by sparse partial redundancy elimination of loads and stores</title><author>Lo, Raymond ; Chow, Fred ; Kennedy, Robert ; Liu, Shin-Ming ; Tu, Peng</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-a167t-77bbcbdfeb9b7bae47d375a64190dc4936ad9e6599f5bc89382ab1f383378ae83</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>1998</creationdate><topic>General and reference -- Cross-computing tools and techniques -- Performance</topic><topic>Mathematics of computing -- Discrete mathematics -- Graph theory -- Graph algorithms</topic><topic>Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software selection and adaptation</topic><topic>Software and its engineering -- Software notations and tools -- Compilers</topic><topic>Software and its engineering -- Software organization and properties -- Extra-functional properties -- Software performance</topic><toplevel>online_resources</toplevel><creatorcontrib>Lo, Raymond</creatorcontrib><creatorcontrib>Chow, Fred</creatorcontrib><creatorcontrib>Kennedy, Robert</creatorcontrib><creatorcontrib>Liu, Shin-Ming</creatorcontrib><creatorcontrib>Tu, Peng</creatorcontrib><collection>Computer and Information Systems Abstracts</collection><collection>Technology Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Lo, Raymond</au><au>Chow, Fred</au><au>Kennedy, Robert</au><au>Liu, Shin-Ming</au><au>Tu, Peng</au><au>Berman, A. Michael</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Register promotion by sparse partial redundancy elimination of loads and stores</atitle><btitle>Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation</btitle><date>1998-05-01</date><risdate>1998</risdate><spage>26</spage><epage>37</epage><pages>26-37</pages><issn>0362-1340</issn><isbn>9780897919876</isbn><isbn>0897919874</isbn><abstract>An algorithm for register promotion is presented based on the observation that the circumstances for promoting a memory location's value to register coincide with situations where the program exhibits partial redundancy between accesses to the memory location. The recent SSAPRE algorithm for eliminating partial redundancy using a sparse SSA representation forms the foundation for the present algorithm to eliminate redundancy among memory accesses, enabling us to achieve both computational and live range optimality in our register promotion results. We discuss how to effect speculative code motion in the SSAPRE framework. We present two different algorithms for performing speculative code motion: the conservative speculation algorithm used in the absence of profile data, and the the profile-driven speculation algorithm used when profile data are available. We define the static single use (SSU) form and develop the dual of the SSAPRE algorithm, called SSUPRE, to perform the partial redundancy elimination of stores. We provide measurement data on the SPECint95 benchmark suite to demonstrate the effectiveness of our register promotion approach in removing loads and stores. We also study the relative performance of the different speculative code motion strategies when applied to scalar loads and stores.</abstract><cop>New York, NY, USA</cop><pub>ACM</pub><doi>10.1145/277650.277659</doi><tpages>12</tpages></addata></record>
fulltext fulltext
identifier ISSN: 0362-1340
ispartof Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation, 1998, p.26-37
issn 0362-1340
language eng
recordid cdi_proquest_miscellaneous_31516223
source ACM Digital Library
subjects General and reference -- Cross-computing tools and techniques -- Performance
Mathematics of computing -- Discrete mathematics -- Graph theory -- Graph algorithms
Social and professional topics -- Professional topics -- Management of computing and information systems -- Software management -- Software selection and adaptation
Software and its engineering -- Software notations and tools -- Compilers
Software and its engineering -- Software organization and properties -- Extra-functional properties -- Software performance
title Register promotion by sparse partial redundancy elimination of loads and stores
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-25T19%3A30%3A53IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_acm_b&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=Register%20promotion%20by%20sparse%20partial%20redundancy%20elimination%20of%20loads%20and%20stores&rft.btitle=Proceedings%20of%20the%20ACM%20SIGPLAN%201998%20conference%20on%20Programming%20language%20design%20and%20implementation&rft.au=Lo,%20Raymond&rft.date=1998-05-01&rft.spage=26&rft.epage=37&rft.pages=26-37&rft.issn=0362-1340&rft.isbn=9780897919876&rft.isbn_list=0897919874&rft_id=info:doi/10.1145/277650.277659&rft_dat=%3Cproquest_acm_b%3E31516223%3C/proquest_acm_b%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=31516223&rft_id=info:pmid/&rfr_iscdi=true