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 (...
Gespeichert in:
Hauptverfasser: | , , , |
---|---|
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 |