Loading…

Instrumentation bias for dynamic data race detection

This paper presents Fast Instrumentation Bias (FIB), a sound and complete dynamic data race detection algorithm that improves performance by reducing or eliminating the costs of analysis atomicity. In addition to checking for errors in target programs, dynamic data race detectors must introduce sync...

Full description

Saved in:
Bibliographic Details
Published in:Proceedings of ACM on programming languages 2017-10, Vol.1 (OOPSLA), p.1-31
Main Authors: Wood, Benjamin P., Cao, Man, Bond, Michael D., Grossman, Dan
Format: Article
Language:English
Citations: Items that this one cites
Items that cite this one
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by cdi_FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73
cites cdi_FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73
container_end_page 31
container_issue OOPSLA
container_start_page 1
container_title Proceedings of ACM on programming languages
container_volume 1
creator Wood, Benjamin P.
Cao, Man
Bond, Michael D.
Grossman, Dan
description This paper presents Fast Instrumentation Bias (FIB), a sound and complete dynamic data race detection algorithm that improves performance by reducing or eliminating the costs of analysis atomicity. In addition to checking for errors in target programs, dynamic data race detectors must introduce synchronization to guard against metadata races that may corrupt analysis state and compromise soundness or completeness. Pessimistic analysis synchronization can account for nontrivial performance overhead in a data race detector. The core contribution of FIB is a novel cooperative ownership-based synchronization protocol whose states and transitions are derived purely from preexisting analysis metadata and logic in a standard data race detection algorithm. By exploiting work already done by the analysis, FIB ensures atomicity of dynamic analysis actions with zero additional time or space cost in the common case. Analysis of temporally thread-local or read-shared accesses completes safely with no synchronization. Uncommon write-sharing transitions require synchronous cross-thread coordination to ensure common cases may proceed synchronization-free. We implemented FIB in the Jikes RVM Java virtual machine. Experimental evaluation shows that FIB eliminates nearly all instrumentation atomicity costs on programs where data often experience windows of thread-local access. Adaptive extensions to the ownership policy effectively eliminate high coordination costs of the core ownership protocol on programs with high rates of serialized sharing. FIB outperforms a naive pessimistic synchronization scheme by 50% on average. Compared to a tuned optimistic metadata synchronization scheme based on conventional fine-grained atomic compare-and-swap operations, FIB is competitive overall, and up to 17% faster on some programs. Overall, FIB effectively exploits latent analysis and program invariants to bring strong integrity guarantees to an otherwise unsynchronized data race detection algorithm at minimal cost.
doi_str_mv 10.1145/3133893
format article
fullrecord <record><control><sourceid>crossref</sourceid><recordid>TN_cdi_crossref_primary_10_1145_3133893</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>10_1145_3133893</sourcerecordid><originalsourceid>FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73</originalsourceid><addsrcrecordid>eNpNj0tLAzEURoNYsNTSv5Cdq9HcvLOU4qNQcKPr4c5NAiPOjCRx0X8vxS5cnW9x-OAwtgNxD6DNgwKlfFBXbC21Mx1oCdf_9g3b1vophICgtFdhzfRhrq38TGlu2MZl5sOIleel8HiacRqJR2zIC1LiMbVEZ-mWrTJ-1bS9cMM-np_e96_d8e3lsH88diSNb51B60hZn6XFIWhBUWsgHJx1Ihtvos3gwhBcBO-NjIYCeWdzckmYTE5t2N3fL5Wl1pJy_13GCcupB9Gfe_tLr_oFu_BGUQ</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype></control><display><type>article</type><title>Instrumentation bias for dynamic data race detection</title><source>ACM Digital Library</source><creator>Wood, Benjamin P. ; Cao, Man ; Bond, Michael D. ; Grossman, Dan</creator><creatorcontrib>Wood, Benjamin P. ; Cao, Man ; Bond, Michael D. ; Grossman, Dan</creatorcontrib><description>This paper presents Fast Instrumentation Bias (FIB), a sound and complete dynamic data race detection algorithm that improves performance by reducing or eliminating the costs of analysis atomicity. In addition to checking for errors in target programs, dynamic data race detectors must introduce synchronization to guard against metadata races that may corrupt analysis state and compromise soundness or completeness. Pessimistic analysis synchronization can account for nontrivial performance overhead in a data race detector. The core contribution of FIB is a novel cooperative ownership-based synchronization protocol whose states and transitions are derived purely from preexisting analysis metadata and logic in a standard data race detection algorithm. By exploiting work already done by the analysis, FIB ensures atomicity of dynamic analysis actions with zero additional time or space cost in the common case. Analysis of temporally thread-local or read-shared accesses completes safely with no synchronization. Uncommon write-sharing transitions require synchronous cross-thread coordination to ensure common cases may proceed synchronization-free. We implemented FIB in the Jikes RVM Java virtual machine. Experimental evaluation shows that FIB eliminates nearly all instrumentation atomicity costs on programs where data often experience windows of thread-local access. Adaptive extensions to the ownership policy effectively eliminate high coordination costs of the core ownership protocol on programs with high rates of serialized sharing. FIB outperforms a naive pessimistic synchronization scheme by 50% on average. Compared to a tuned optimistic metadata synchronization scheme based on conventional fine-grained atomic compare-and-swap operations, FIB is competitive overall, and up to 17% faster on some programs. Overall, FIB effectively exploits latent analysis and program invariants to bring strong integrity guarantees to an otherwise unsynchronized data race detection algorithm at minimal cost.</description><identifier>ISSN: 2475-1421</identifier><identifier>EISSN: 2475-1421</identifier><identifier>DOI: 10.1145/3133893</identifier><language>eng</language><ispartof>Proceedings of ACM on programming languages, 2017-10, Vol.1 (OOPSLA), p.1-31</ispartof><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73</citedby><cites>FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73</cites></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><link.rule.ids>314,780,784,27924,27925</link.rule.ids></links><search><creatorcontrib>Wood, Benjamin P.</creatorcontrib><creatorcontrib>Cao, Man</creatorcontrib><creatorcontrib>Bond, Michael D.</creatorcontrib><creatorcontrib>Grossman, Dan</creatorcontrib><title>Instrumentation bias for dynamic data race detection</title><title>Proceedings of ACM on programming languages</title><description>This paper presents Fast Instrumentation Bias (FIB), a sound and complete dynamic data race detection algorithm that improves performance by reducing or eliminating the costs of analysis atomicity. In addition to checking for errors in target programs, dynamic data race detectors must introduce synchronization to guard against metadata races that may corrupt analysis state and compromise soundness or completeness. Pessimistic analysis synchronization can account for nontrivial performance overhead in a data race detector. The core contribution of FIB is a novel cooperative ownership-based synchronization protocol whose states and transitions are derived purely from preexisting analysis metadata and logic in a standard data race detection algorithm. By exploiting work already done by the analysis, FIB ensures atomicity of dynamic analysis actions with zero additional time or space cost in the common case. Analysis of temporally thread-local or read-shared accesses completes safely with no synchronization. Uncommon write-sharing transitions require synchronous cross-thread coordination to ensure common cases may proceed synchronization-free. We implemented FIB in the Jikes RVM Java virtual machine. Experimental evaluation shows that FIB eliminates nearly all instrumentation atomicity costs on programs where data often experience windows of thread-local access. Adaptive extensions to the ownership policy effectively eliminate high coordination costs of the core ownership protocol on programs with high rates of serialized sharing. FIB outperforms a naive pessimistic synchronization scheme by 50% on average. Compared to a tuned optimistic metadata synchronization scheme based on conventional fine-grained atomic compare-and-swap operations, FIB is competitive overall, and up to 17% faster on some programs. Overall, FIB effectively exploits latent analysis and program invariants to bring strong integrity guarantees to an otherwise unsynchronized data race detection algorithm at minimal cost.</description><issn>2475-1421</issn><issn>2475-1421</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2017</creationdate><recordtype>article</recordtype><recordid>eNpNj0tLAzEURoNYsNTSv5Cdq9HcvLOU4qNQcKPr4c5NAiPOjCRx0X8vxS5cnW9x-OAwtgNxD6DNgwKlfFBXbC21Mx1oCdf_9g3b1vophICgtFdhzfRhrq38TGlu2MZl5sOIleel8HiacRqJR2zIC1LiMbVEZ-mWrTJ-1bS9cMM-np_e96_d8e3lsH88diSNb51B60hZn6XFIWhBUWsgHJx1Ihtvos3gwhBcBO-NjIYCeWdzckmYTE5t2N3fL5Wl1pJy_13GCcupB9Gfe_tLr_oFu_BGUQ</recordid><startdate>20171001</startdate><enddate>20171001</enddate><creator>Wood, Benjamin P.</creator><creator>Cao, Man</creator><creator>Bond, Michael D.</creator><creator>Grossman, Dan</creator><scope>AAYXX</scope><scope>CITATION</scope></search><sort><creationdate>20171001</creationdate><title>Instrumentation bias for dynamic data race detection</title><author>Wood, Benjamin P. ; Cao, Man ; Bond, Michael D. ; Grossman, Dan</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2017</creationdate><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Wood, Benjamin P.</creatorcontrib><creatorcontrib>Cao, Man</creatorcontrib><creatorcontrib>Bond, Michael D.</creatorcontrib><creatorcontrib>Grossman, Dan</creatorcontrib><collection>CrossRef</collection><jtitle>Proceedings of ACM on programming languages</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Wood, Benjamin P.</au><au>Cao, Man</au><au>Bond, Michael D.</au><au>Grossman, Dan</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Instrumentation bias for dynamic data race detection</atitle><jtitle>Proceedings of ACM on programming languages</jtitle><date>2017-10-01</date><risdate>2017</risdate><volume>1</volume><issue>OOPSLA</issue><spage>1</spage><epage>31</epage><pages>1-31</pages><issn>2475-1421</issn><eissn>2475-1421</eissn><abstract>This paper presents Fast Instrumentation Bias (FIB), a sound and complete dynamic data race detection algorithm that improves performance by reducing or eliminating the costs of analysis atomicity. In addition to checking for errors in target programs, dynamic data race detectors must introduce synchronization to guard against metadata races that may corrupt analysis state and compromise soundness or completeness. Pessimistic analysis synchronization can account for nontrivial performance overhead in a data race detector. The core contribution of FIB is a novel cooperative ownership-based synchronization protocol whose states and transitions are derived purely from preexisting analysis metadata and logic in a standard data race detection algorithm. By exploiting work already done by the analysis, FIB ensures atomicity of dynamic analysis actions with zero additional time or space cost in the common case. Analysis of temporally thread-local or read-shared accesses completes safely with no synchronization. Uncommon write-sharing transitions require synchronous cross-thread coordination to ensure common cases may proceed synchronization-free. We implemented FIB in the Jikes RVM Java virtual machine. Experimental evaluation shows that FIB eliminates nearly all instrumentation atomicity costs on programs where data often experience windows of thread-local access. Adaptive extensions to the ownership policy effectively eliminate high coordination costs of the core ownership protocol on programs with high rates of serialized sharing. FIB outperforms a naive pessimistic synchronization scheme by 50% on average. Compared to a tuned optimistic metadata synchronization scheme based on conventional fine-grained atomic compare-and-swap operations, FIB is competitive overall, and up to 17% faster on some programs. Overall, FIB effectively exploits latent analysis and program invariants to bring strong integrity guarantees to an otherwise unsynchronized data race detection algorithm at minimal cost.</abstract><doi>10.1145/3133893</doi><tpages>31</tpages><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2475-1421
ispartof Proceedings of ACM on programming languages, 2017-10, Vol.1 (OOPSLA), p.1-31
issn 2475-1421
2475-1421
language eng
recordid cdi_crossref_primary_10_1145_3133893
source ACM Digital Library
title Instrumentation bias for dynamic data race detection
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-05T05%3A15%3A29IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-crossref&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Instrumentation%20bias%20for%20dynamic%20data%20race%20detection&rft.jtitle=Proceedings%20of%20ACM%20on%20programming%20languages&rft.au=Wood,%20Benjamin%20P.&rft.date=2017-10-01&rft.volume=1&rft.issue=OOPSLA&rft.spage=1&rft.epage=31&rft.pages=1-31&rft.issn=2475-1421&rft.eissn=2475-1421&rft_id=info:doi/10.1145/3133893&rft_dat=%3Ccrossref%3E10_1145_3133893%3C/crossref%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-c258t-5a67c368f26ab940cd441cab7670f585d6f179b97d18852d5c9c876fe7e05fc73%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_id=info:pmid/&rfr_iscdi=true