Implementing Signatures for Transactional Memory

Transactional Memory (TM) systems must track the read and write sets - items read and written during a transaction - to detect conflicts among concurrent transactions. Several TMs use signatures, which summarize unbounded read/write sets in bounded hardware at a performance cost of false positives (...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Sanchez, D., Yen, L., Hill, M.D., Sankaralingam, K.
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 133
container_issue
container_start_page 123
container_title
container_volume
creator Sanchez, D.
Yen, L.
Hill, M.D.
Sankaralingam, K.
description Transactional Memory (TM) systems must track the read and write sets - items read and written during a transaction - to detect conflicts among concurrent transactions. Several TMs use signatures, which summarize unbounded read/write sets in bounded hardware at a performance cost of false positives (conflicts detected when none exists). This paper examines different organizations to achieve hardware-efficient and accurate TM signatures. First, we find that implementing each signature with a single k-hash- function Bloom filter (True Bloom signature) is inefficient, as it requires multi-ported SRAMs. Instead, we advocate using k single-hash-function Bloom filters in parallel (Parallel Bloom signature), using area-efficient single-ported SRAMs. Our formal analysis shows that both organizations perform equally well in theory and our simulation- based evaluation shows this to hold approximately in practice. We also show that by choosing high-quality hash functions we can achieve signature designs noticeably more accurate than the previously proposed implementations. Finally, we adapt Pagh and Rodler's cuckoo hashing to implement Cuckoo-Bloom signatures. While this representation does not support set intersection, it mitigates false positives for the common case of small read/write sets and performs like a Bloom filter for large sets.
doi_str_mv 10.1109/MICRO.2007.24
format Conference Proceeding
fullrecord <record><control><sourceid>ieee_6IE</sourceid><recordid>TN_cdi_ieee_primary_4408250</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>4408250</ieee_id><sourcerecordid>4408250</sourcerecordid><originalsourceid>FETCH-LOGICAL-i214t-e908fde9aba9336dd54ba72624731bcef87b5a4e988808b8e83b898b567dba063</originalsourceid><addsrcrecordid>eNotzM1Kw0AUQOERFWyqS1du8gKJd2buZO4sJWgNtBS0grsy09yUSH7KJC769gq6OosPjhD3EnIpwT1uqvJtmysAmyu8EIlEhSiNlJ-XIgFbOKMBLV2JhQSrMkQjb0QyTV8AQL-6EFD1p457HuZ2OKbv7XHw83fkKW3GmO6iHyZ_mNtx8F264X6M51tx3fhu4rv_LsXHy_OufM3W21VVPq2zVkmcM3ZATc3OB--0LuraYPBWFQqtluHADdlgPLIjIqBATDqQo2AKWwcPhV6Kh79vy8z7U2x7H897RCBlQP8A5NJFHQ</addsrcrecordid><sourcetype>Publisher</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype></control><display><type>conference_proceeding</type><title>Implementing Signatures for Transactional Memory</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Sanchez, D. ; Yen, L. ; Hill, M.D. ; Sankaralingam, K.</creator><creatorcontrib>Sanchez, D. ; Yen, L. ; Hill, M.D. ; Sankaralingam, K.</creatorcontrib><description>Transactional Memory (TM) systems must track the read and write sets - items read and written during a transaction - to detect conflicts among concurrent transactions. Several TMs use signatures, which summarize unbounded read/write sets in bounded hardware at a performance cost of false positives (conflicts detected when none exists). This paper examines different organizations to achieve hardware-efficient and accurate TM signatures. First, we find that implementing each signature with a single k-hash- function Bloom filter (True Bloom signature) is inefficient, as it requires multi-ported SRAMs. Instead, we advocate using k single-hash-function Bloom filters in parallel (Parallel Bloom signature), using area-efficient single-ported SRAMs. Our formal analysis shows that both organizations perform equally well in theory and our simulation- based evaluation shows this to hold approximately in practice. We also show that by choosing high-quality hash functions we can achieve signature designs noticeably more accurate than the previously proposed implementations. Finally, we adapt Pagh and Rodler's cuckoo hashing to implement Cuckoo-Bloom signatures. While this representation does not support set intersection, it mitigates false positives for the common case of small read/write sets and performs like a Bloom filter for large sets.</description><identifier>ISSN: 1072-4451</identifier><identifier>ISBN: 0769530478</identifier><identifier>ISBN: 9780769530475</identifier><identifier>EISBN: 142441511X</identifier><identifier>EISBN: 9781424415113</identifier><identifier>DOI: 10.1109/MICRO.2007.24</identifier><language>eng</language><publisher>IEEE</publisher><subject>Costs ; Degradation ; Dynamic programming ; Filters ; Hardware ; Hydrogen ; Performance analysis ; Read-write memory ; Space exploration ; System testing</subject><ispartof>40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007), 2007, p.123-133</ispartof><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/4408250$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,776,780,785,786,2052,27904,54898</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/4408250$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Sanchez, D.</creatorcontrib><creatorcontrib>Yen, L.</creatorcontrib><creatorcontrib>Hill, M.D.</creatorcontrib><creatorcontrib>Sankaralingam, K.</creatorcontrib><title>Implementing Signatures for Transactional Memory</title><title>40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007)</title><addtitle>MICRO</addtitle><description>Transactional Memory (TM) systems must track the read and write sets - items read and written during a transaction - to detect conflicts among concurrent transactions. Several TMs use signatures, which summarize unbounded read/write sets in bounded hardware at a performance cost of false positives (conflicts detected when none exists). This paper examines different organizations to achieve hardware-efficient and accurate TM signatures. First, we find that implementing each signature with a single k-hash- function Bloom filter (True Bloom signature) is inefficient, as it requires multi-ported SRAMs. Instead, we advocate using k single-hash-function Bloom filters in parallel (Parallel Bloom signature), using area-efficient single-ported SRAMs. Our formal analysis shows that both organizations perform equally well in theory and our simulation- based evaluation shows this to hold approximately in practice. We also show that by choosing high-quality hash functions we can achieve signature designs noticeably more accurate than the previously proposed implementations. Finally, we adapt Pagh and Rodler's cuckoo hashing to implement Cuckoo-Bloom signatures. While this representation does not support set intersection, it mitigates false positives for the common case of small read/write sets and performs like a Bloom filter for large sets.</description><subject>Costs</subject><subject>Degradation</subject><subject>Dynamic programming</subject><subject>Filters</subject><subject>Hardware</subject><subject>Hydrogen</subject><subject>Performance analysis</subject><subject>Read-write memory</subject><subject>Space exploration</subject><subject>System testing</subject><issn>1072-4451</issn><isbn>0769530478</isbn><isbn>9780769530475</isbn><isbn>142441511X</isbn><isbn>9781424415113</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>2007</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><sourceid>RIE</sourceid><recordid>eNotzM1Kw0AUQOERFWyqS1du8gKJd2buZO4sJWgNtBS0grsy09yUSH7KJC769gq6OosPjhD3EnIpwT1uqvJtmysAmyu8EIlEhSiNlJ-XIgFbOKMBLV2JhQSrMkQjb0QyTV8AQL-6EFD1p457HuZ2OKbv7XHw83fkKW3GmO6iHyZ_mNtx8F264X6M51tx3fhu4rv_LsXHy_OufM3W21VVPq2zVkmcM3ZATc3OB--0LuraYPBWFQqtluHADdlgPLIjIqBATDqQo2AKWwcPhV6Kh79vy8z7U2x7H897RCBlQP8A5NJFHQ</recordid><startdate>20070101</startdate><enddate>20070101</enddate><creator>Sanchez, D.</creator><creator>Yen, L.</creator><creator>Hill, M.D.</creator><creator>Sankaralingam, K.</creator><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope></search><sort><creationdate>20070101</creationdate><title>Implementing Signatures for Transactional Memory</title><author>Sanchez, D. ; Yen, L. ; Hill, M.D. ; Sankaralingam, K.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-i214t-e908fde9aba9336dd54ba72624731bcef87b5a4e988808b8e83b898b567dba063</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>2007</creationdate><topic>Costs</topic><topic>Degradation</topic><topic>Dynamic programming</topic><topic>Filters</topic><topic>Hardware</topic><topic>Hydrogen</topic><topic>Performance analysis</topic><topic>Read-write memory</topic><topic>Space exploration</topic><topic>System testing</topic><toplevel>online_resources</toplevel><creatorcontrib>Sanchez, D.</creatorcontrib><creatorcontrib>Yen, L.</creatorcontrib><creatorcontrib>Hill, M.D.</creatorcontrib><creatorcontrib>Sankaralingam, K.</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>Sanchez, D.</au><au>Yen, L.</au><au>Hill, M.D.</au><au>Sankaralingam, K.</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Implementing Signatures for Transactional Memory</atitle><btitle>40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007)</btitle><stitle>MICRO</stitle><date>2007-01-01</date><risdate>2007</risdate><spage>123</spage><epage>133</epage><pages>123-133</pages><issn>1072-4451</issn><isbn>0769530478</isbn><isbn>9780769530475</isbn><eisbn>142441511X</eisbn><eisbn>9781424415113</eisbn><abstract>Transactional Memory (TM) systems must track the read and write sets - items read and written during a transaction - to detect conflicts among concurrent transactions. Several TMs use signatures, which summarize unbounded read/write sets in bounded hardware at a performance cost of false positives (conflicts detected when none exists). This paper examines different organizations to achieve hardware-efficient and accurate TM signatures. First, we find that implementing each signature with a single k-hash- function Bloom filter (True Bloom signature) is inefficient, as it requires multi-ported SRAMs. Instead, we advocate using k single-hash-function Bloom filters in parallel (Parallel Bloom signature), using area-efficient single-ported SRAMs. Our formal analysis shows that both organizations perform equally well in theory and our simulation- based evaluation shows this to hold approximately in practice. We also show that by choosing high-quality hash functions we can achieve signature designs noticeably more accurate than the previously proposed implementations. Finally, we adapt Pagh and Rodler's cuckoo hashing to implement Cuckoo-Bloom signatures. While this representation does not support set intersection, it mitigates false positives for the common case of small read/write sets and performs like a Bloom filter for large sets.</abstract><pub>IEEE</pub><doi>10.1109/MICRO.2007.24</doi><tpages>11</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 1072-4451
ispartof 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007), 2007, p.123-133
issn 1072-4451
language eng
recordid cdi_ieee_primary_4408250
source IEEE Electronic Library (IEL) Conference Proceedings
subjects Costs
Degradation
Dynamic programming
Filters
Hardware
Hydrogen
Performance analysis
Read-write memory
Space exploration
System testing
title Implementing Signatures for Transactional Memory
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-28T04%3A43%3A49IST&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=Implementing%20Signatures%20for%20Transactional%20Memory&rft.btitle=40th%20Annual%20IEEE/ACM%20International%20Symposium%20on%20Microarchitecture%20(MICRO%202007)&rft.au=Sanchez,%20D.&rft.date=2007-01-01&rft.spage=123&rft.epage=133&rft.pages=123-133&rft.issn=1072-4451&rft.isbn=0769530478&rft.isbn_list=9780769530475&rft_id=info:doi/10.1109/MICRO.2007.24&rft_dat=%3Cieee_6IE%3E4408250%3C/ieee_6IE%3E%3Curl%3E%3C/url%3E&rft.eisbn=142441511X&rft.eisbn_list=9781424415113&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_id=info:pmid/&rft_ieee_id=4408250&rfr_iscdi=true