A Segmented Bloom Filter Algorithm for Efficient Predictors

Bloom Filters are a technique to reduce the effects of conflicts/interference in hash table-like structures. Conventional hash tables store information in a single location which is susceptible to destructive interference through hash conflicts. A Bloom Filter uses multiple hash functions to store i...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Breternitz, M., Loh, G.H., Black, B., Rupley, J., Sassone, P.G., Attrot, W., Wu, Y.
Format: Tagungsbericht
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 130
container_issue
container_start_page 123
container_title
container_volume
creator Breternitz, M.
Loh, G.H.
Black, B.
Rupley, J.
Sassone, P.G.
Attrot, W.
Wu, Y.
description Bloom Filters are a technique to reduce the effects of conflicts/interference in hash table-like structures. Conventional hash tables store information in a single location which is susceptible to destructive interference through hash conflicts. A Bloom Filter uses multiple hash functions to store information in several locations, and recombines the information through some voting mechanism. Many microarchitectural predictors use simple single-index hash tables to make binary 0/1 predictions, and Bloom Filters help improve predictor accuracy. However, implementing a true Bloom Filter requires k hash functions, which in turn implies a k-ported hash table, or k sequential accesses. Unfortunately,the area of a hardware table increases quadratically with the port count, increasing costs of area, latency and power consumption. We propose a simple but elegant modification to the Bloom Filter algorithm that uses banking combined with special hash functions that guarantee all hash indexes fall into non-conflicting banks. We evaluate several applications of our Banked Bloom Filter (BBF) prediction in processors: BBF branch prediction, BBF load hit/miss prediction, and BBF last-tag prediction. We show that BBF predictors can provide accurate predictions with substantially less cost than previous techniques.
doi_str_mv 10.1109/SBAC-PAD.2008.24
format Conference Proceeding
fullrecord <record><control><sourceid>ieee_6IE</sourceid><recordid>TN_cdi_ieee_primary_4685736</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>4685736</ieee_id><sourcerecordid>4685736</sourcerecordid><originalsourceid>FETCH-LOGICAL-i175t-b41a2b8cab75fef605b54b04a5b7c3d743b7f5e501686af460f0d83d4086f21f3</originalsourceid><addsrcrecordid>eNotzE1LwzAYwPHgC1jn7oKXfIHUJ3nyVjx13abCwMH0PJI2mZHWStqL315BT__Ljz8htxxKzqG6P6zqhu3rdSkAbCnkGSmElsgQgJ-TZWUsGF0plALNBSm4UsC0Qrwi19P0AYBaVLogDzU9hNMQPufQ0VU_jgPdpn4Omdb9acxpfh9oHDPdxJja9MvoPocutfOYpxtyGV0_heV_F-Rtu3ltntju5fG5qXcscaNm5iV3wtvWeaNiiBqUV9KDdMqbFjsj0ZuoggKurXZRaojQWewkWB0Fj7ggd3_fFEI4fuU0uPx9lNoqgxp_AMzsSRE</addsrcrecordid><sourcetype>Publisher</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype></control><display><type>conference_proceeding</type><title>A Segmented Bloom Filter Algorithm for Efficient Predictors</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Breternitz, M. ; Loh, G.H. ; Black, B. ; Rupley, J. ; Sassone, P.G. ; Attrot, W. ; Wu, Y.</creator><creatorcontrib>Breternitz, M. ; Loh, G.H. ; Black, B. ; Rupley, J. ; Sassone, P.G. ; Attrot, W. ; Wu, Y.</creatorcontrib><description>Bloom Filters are a technique to reduce the effects of conflicts/interference in hash table-like structures. Conventional hash tables store information in a single location which is susceptible to destructive interference through hash conflicts. A Bloom Filter uses multiple hash functions to store information in several locations, and recombines the information through some voting mechanism. Many microarchitectural predictors use simple single-index hash tables to make binary 0/1 predictions, and Bloom Filters help improve predictor accuracy. However, implementing a true Bloom Filter requires k hash functions, which in turn implies a k-ported hash table, or k sequential accesses. Unfortunately,the area of a hardware table increases quadratically with the port count, increasing costs of area, latency and power consumption. We propose a simple but elegant modification to the Bloom Filter algorithm that uses banking combined with special hash functions that guarantee all hash indexes fall into non-conflicting banks. We evaluate several applications of our Banked Bloom Filter (BBF) prediction in processors: BBF branch prediction, BBF load hit/miss prediction, and BBF last-tag prediction. We show that BBF predictors can provide accurate predictions with substantially less cost than previous techniques.</description><identifier>ISSN: 1550-6533</identifier><identifier>ISBN: 9780769534237</identifier><identifier>ISBN: 0769534236</identifier><identifier>EISSN: 2643-3001</identifier><identifier>DOI: 10.1109/SBAC-PAD.2008.24</identifier><language>eng</language><publisher>IEEE</publisher><subject>Accuracy ; banking ; Bloom Filters ; Costs ; Delay ; Hardware ; Information filtering ; Information filters ; Interference ; Microarchitecture ; Prediction algorithms ; predictors ; speculation ; Voting</subject><ispartof>2008 20th International Symposium on Computer Architecture and High Performance Computing, 2008, p.123-130</ispartof><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/4685736$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,780,784,789,790,2058,27925,54920</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/4685736$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Breternitz, M.</creatorcontrib><creatorcontrib>Loh, G.H.</creatorcontrib><creatorcontrib>Black, B.</creatorcontrib><creatorcontrib>Rupley, J.</creatorcontrib><creatorcontrib>Sassone, P.G.</creatorcontrib><creatorcontrib>Attrot, W.</creatorcontrib><creatorcontrib>Wu, Y.</creatorcontrib><title>A Segmented Bloom Filter Algorithm for Efficient Predictors</title><title>2008 20th International Symposium on Computer Architecture and High Performance Computing</title><addtitle>SBACPAD</addtitle><description>Bloom Filters are a technique to reduce the effects of conflicts/interference in hash table-like structures. Conventional hash tables store information in a single location which is susceptible to destructive interference through hash conflicts. A Bloom Filter uses multiple hash functions to store information in several locations, and recombines the information through some voting mechanism. Many microarchitectural predictors use simple single-index hash tables to make binary 0/1 predictions, and Bloom Filters help improve predictor accuracy. However, implementing a true Bloom Filter requires k hash functions, which in turn implies a k-ported hash table, or k sequential accesses. Unfortunately,the area of a hardware table increases quadratically with the port count, increasing costs of area, latency and power consumption. We propose a simple but elegant modification to the Bloom Filter algorithm that uses banking combined with special hash functions that guarantee all hash indexes fall into non-conflicting banks. We evaluate several applications of our Banked Bloom Filter (BBF) prediction in processors: BBF branch prediction, BBF load hit/miss prediction, and BBF last-tag prediction. We show that BBF predictors can provide accurate predictions with substantially less cost than previous techniques.</description><subject>Accuracy</subject><subject>banking</subject><subject>Bloom Filters</subject><subject>Costs</subject><subject>Delay</subject><subject>Hardware</subject><subject>Information filtering</subject><subject>Information filters</subject><subject>Interference</subject><subject>Microarchitecture</subject><subject>Prediction algorithms</subject><subject>predictors</subject><subject>speculation</subject><subject>Voting</subject><issn>1550-6533</issn><issn>2643-3001</issn><isbn>9780769534237</isbn><isbn>0769534236</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>2008</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><sourceid>RIE</sourceid><recordid>eNotzE1LwzAYwPHgC1jn7oKXfIHUJ3nyVjx13abCwMH0PJI2mZHWStqL315BT__Ljz8htxxKzqG6P6zqhu3rdSkAbCnkGSmElsgQgJ-TZWUsGF0plALNBSm4UsC0Qrwi19P0AYBaVLogDzU9hNMQPufQ0VU_jgPdpn4Omdb9acxpfh9oHDPdxJja9MvoPocutfOYpxtyGV0_heV_F-Rtu3ltntju5fG5qXcscaNm5iV3wtvWeaNiiBqUV9KDdMqbFjsj0ZuoggKurXZRaojQWewkWB0Fj7ggd3_fFEI4fuU0uPx9lNoqgxp_AMzsSRE</recordid><startdate>200810</startdate><enddate>200810</enddate><creator>Breternitz, M.</creator><creator>Loh, G.H.</creator><creator>Black, B.</creator><creator>Rupley, J.</creator><creator>Sassone, P.G.</creator><creator>Attrot, W.</creator><creator>Wu, Y.</creator><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope></search><sort><creationdate>200810</creationdate><title>A Segmented Bloom Filter Algorithm for Efficient Predictors</title><author>Breternitz, M. ; Loh, G.H. ; Black, B. ; Rupley, J. ; Sassone, P.G. ; Attrot, W. ; Wu, Y.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-i175t-b41a2b8cab75fef605b54b04a5b7c3d743b7f5e501686af460f0d83d4086f21f3</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>2008</creationdate><topic>Accuracy</topic><topic>banking</topic><topic>Bloom Filters</topic><topic>Costs</topic><topic>Delay</topic><topic>Hardware</topic><topic>Information filtering</topic><topic>Information filters</topic><topic>Interference</topic><topic>Microarchitecture</topic><topic>Prediction algorithms</topic><topic>predictors</topic><topic>speculation</topic><topic>Voting</topic><toplevel>online_resources</toplevel><creatorcontrib>Breternitz, M.</creatorcontrib><creatorcontrib>Loh, G.H.</creatorcontrib><creatorcontrib>Black, B.</creatorcontrib><creatorcontrib>Rupley, J.</creatorcontrib><creatorcontrib>Sassone, P.G.</creatorcontrib><creatorcontrib>Attrot, W.</creatorcontrib><creatorcontrib>Wu, Y.</creatorcontrib><collection>IEEE Electronic Library (IEL) Conference Proceedings</collection><collection>IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume</collection><collection>IEEE Xplore All Conference Proceedings</collection><collection>IEEE Electronic Library (IEL)</collection><collection>IEEE Proceedings Order Plans (POP All) 1998-Present</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Breternitz, M.</au><au>Loh, G.H.</au><au>Black, B.</au><au>Rupley, J.</au><au>Sassone, P.G.</au><au>Attrot, W.</au><au>Wu, Y.</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>A Segmented Bloom Filter Algorithm for Efficient Predictors</atitle><btitle>2008 20th International Symposium on Computer Architecture and High Performance Computing</btitle><stitle>SBACPAD</stitle><date>2008-10</date><risdate>2008</risdate><spage>123</spage><epage>130</epage><pages>123-130</pages><issn>1550-6533</issn><eissn>2643-3001</eissn><isbn>9780769534237</isbn><isbn>0769534236</isbn><abstract>Bloom Filters are a technique to reduce the effects of conflicts/interference in hash table-like structures. Conventional hash tables store information in a single location which is susceptible to destructive interference through hash conflicts. A Bloom Filter uses multiple hash functions to store information in several locations, and recombines the information through some voting mechanism. Many microarchitectural predictors use simple single-index hash tables to make binary 0/1 predictions, and Bloom Filters help improve predictor accuracy. However, implementing a true Bloom Filter requires k hash functions, which in turn implies a k-ported hash table, or k sequential accesses. Unfortunately,the area of a hardware table increases quadratically with the port count, increasing costs of area, latency and power consumption. We propose a simple but elegant modification to the Bloom Filter algorithm that uses banking combined with special hash functions that guarantee all hash indexes fall into non-conflicting banks. We evaluate several applications of our Banked Bloom Filter (BBF) prediction in processors: BBF branch prediction, BBF load hit/miss prediction, and BBF last-tag prediction. We show that BBF predictors can provide accurate predictions with substantially less cost than previous techniques.</abstract><pub>IEEE</pub><doi>10.1109/SBAC-PAD.2008.24</doi><tpages>8</tpages></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 1550-6533
ispartof 2008 20th International Symposium on Computer Architecture and High Performance Computing, 2008, p.123-130
issn 1550-6533
2643-3001
language eng
recordid cdi_ieee_primary_4685736
source IEEE Electronic Library (IEL) Conference Proceedings
subjects Accuracy
banking
Bloom Filters
Costs
Delay
Hardware
Information filtering
Information filters
Interference
Microarchitecture
Prediction algorithms
predictors
speculation
Voting
title A Segmented Bloom Filter Algorithm for Efficient Predictors
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-03T05%3A51%3A23IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-ieee_6IE&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=A%20Segmented%20Bloom%20Filter%20Algorithm%20for%20Efficient%20Predictors&rft.btitle=2008%2020th%20International%20Symposium%20on%20Computer%20Architecture%20and%20High%20Performance%20Computing&rft.au=Breternitz,%20M.&rft.date=2008-10&rft.spage=123&rft.epage=130&rft.pages=123-130&rft.issn=1550-6533&rft.eissn=2643-3001&rft.isbn=9780769534237&rft.isbn_list=0769534236&rft_id=info:doi/10.1109/SBAC-PAD.2008.24&rft_dat=%3Cieee_6IE%3E4685736%3C/ieee_6IE%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rft_ieee_id=4685736&rfr_iscdi=true