Scaling predictive analysis of concurrent programs by removing trace redundancy
Predictive trace analysis (PTA) of concurrent programs is powerful in finding concurrency bugs unseen in past program executions. Unfortunately, existing PTA solutions face considerable challenges in scaling to large traces. In this article, we identify that a large percentage of events in the trace...
Gespeichert in:
Veröffentlicht in: | ACM transactions on software engineering and methodology 2013-02, Vol.22 (1), p.1-21 |
---|---|
Hauptverfasser: | , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
container_end_page | 21 |
---|---|
container_issue | 1 |
container_start_page | 1 |
container_title | ACM transactions on software engineering and methodology |
container_volume | 22 |
creator | Huang, Jeff Zhou, Jinguo Zhang, Charles |
description | Predictive trace analysis (PTA) of concurrent programs is powerful in finding concurrency bugs unseen in past program executions. Unfortunately, existing PTA solutions face considerable challenges in scaling to large traces. In this article, we identify that a large percentage of events in the trace are redundant for presenting useful analysis results to the end user. Removing them from the trace can significantly improve the scalability of PTA without affecting the quality of the results. We present a trace redundancy theorem that specifies a redundancy criterion and the soundness guarantee that the PTA results are preserved after removing the redundancy. Based on this criterion, we design and implement TraceFilter, an efficient algorithm that automatically removes redundant events from a trace for the PTA of general concurrency access anomalies. We evaluated TraceFilter on a set of popular concurrent benchmarks as well as real world large server programs. Our experimental results show that TraceFilter is able to significantly improve the scalability of PTA by orders of magnitude, without impairing the analysis result. |
doi_str_mv | 10.1145/2430536.2430542 |
format | Article |
fullrecord | <record><control><sourceid>proquest_cross</sourceid><recordid>TN_cdi_proquest_miscellaneous_1506384307</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><sourcerecordid>1506384307</sourcerecordid><originalsourceid>FETCH-LOGICAL-c274t-fd463c14f643433c9a6939f1ecc6d724874b5af89e87f372729559edca5278233</originalsourceid><addsrcrecordid>eNotkD1rwzAQhkVpoWnauavHLk4knWRZYwn9gkCGttBNKGcpuNhyKtkB__s6H9N7B897HA8hj4wuGBNyyQVQCcXilIJfkRmTUuUKNL-eZip0DsB-bsldSr-UMqBczMjmE21Th122j66qsa8PLrPBNmOqU9b5DLuAQ4wu9BPR7aJtU7Yds-ja7nCs9dGim9ZqCJUNON6TG2-b5B4uOSffry9fq_d8vXn7WD2vc-RK9LmvRAHIhC8ECADUttCgPXOIRaW4KJXYSutL7UrlQXHFtZTaVWglVyUHmJOn893pq7_Bpd60dULXNDa4bkiGSVpAOalQE7o8oxi7lKLzZh_r1sbRMGqO6sxFnbmog3_PL2EP</addsrcrecordid><sourcetype>Aggregation Database</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>1506384307</pqid></control><display><type>article</type><title>Scaling predictive analysis of concurrent programs by removing trace redundancy</title><source>ACM Digital Library</source><creator>Huang, Jeff ; Zhou, Jinguo ; Zhang, Charles</creator><creatorcontrib>Huang, Jeff ; Zhou, Jinguo ; Zhang, Charles</creatorcontrib><description>Predictive trace analysis (PTA) of concurrent programs is powerful in finding concurrency bugs unseen in past program executions. Unfortunately, existing PTA solutions face considerable challenges in scaling to large traces. In this article, we identify that a large percentage of events in the trace are redundant for presenting useful analysis results to the end user. Removing them from the trace can significantly improve the scalability of PTA without affecting the quality of the results. We present a trace redundancy theorem that specifies a redundancy criterion and the soundness guarantee that the PTA results are preserved after removing the redundancy. Based on this criterion, we design and implement TraceFilter, an efficient algorithm that automatically removes redundant events from a trace for the PTA of general concurrency access anomalies. We evaluated TraceFilter on a set of popular concurrent benchmarks as well as real world large server programs. Our experimental results show that TraceFilter is able to significantly improve the scalability of PTA by orders of magnitude, without impairing the analysis result.</description><identifier>ISSN: 1049-331X</identifier><identifier>EISSN: 1557-7392</identifier><identifier>DOI: 10.1145/2430536.2430542</identifier><language>eng</language><subject>Algorithms</subject><ispartof>ACM transactions on software engineering and methodology, 2013-02, Vol.22 (1), p.1-21</ispartof><lds50>peer_reviewed</lds50><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c274t-fd463c14f643433c9a6939f1ecc6d724874b5af89e87f372729559edca5278233</citedby><cites>FETCH-LOGICAL-c274t-fd463c14f643433c9a6939f1ecc6d724874b5af89e87f372729559edca5278233</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>Huang, Jeff</creatorcontrib><creatorcontrib>Zhou, Jinguo</creatorcontrib><creatorcontrib>Zhang, Charles</creatorcontrib><title>Scaling predictive analysis of concurrent programs by removing trace redundancy</title><title>ACM transactions on software engineering and methodology</title><description>Predictive trace analysis (PTA) of concurrent programs is powerful in finding concurrency bugs unseen in past program executions. Unfortunately, existing PTA solutions face considerable challenges in scaling to large traces. In this article, we identify that a large percentage of events in the trace are redundant for presenting useful analysis results to the end user. Removing them from the trace can significantly improve the scalability of PTA without affecting the quality of the results. We present a trace redundancy theorem that specifies a redundancy criterion and the soundness guarantee that the PTA results are preserved after removing the redundancy. Based on this criterion, we design and implement TraceFilter, an efficient algorithm that automatically removes redundant events from a trace for the PTA of general concurrency access anomalies. We evaluated TraceFilter on a set of popular concurrent benchmarks as well as real world large server programs. Our experimental results show that TraceFilter is able to significantly improve the scalability of PTA by orders of magnitude, without impairing the analysis result.</description><subject>Algorithms</subject><issn>1049-331X</issn><issn>1557-7392</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2013</creationdate><recordtype>article</recordtype><recordid>eNotkD1rwzAQhkVpoWnauavHLk4knWRZYwn9gkCGttBNKGcpuNhyKtkB__s6H9N7B897HA8hj4wuGBNyyQVQCcXilIJfkRmTUuUKNL-eZip0DsB-bsldSr-UMqBczMjmE21Th122j66qsa8PLrPBNmOqU9b5DLuAQ4wu9BPR7aJtU7Yds-ja7nCs9dGim9ZqCJUNON6TG2-b5B4uOSffry9fq_d8vXn7WD2vc-RK9LmvRAHIhC8ECADUttCgPXOIRaW4KJXYSutL7UrlQXHFtZTaVWglVyUHmJOn893pq7_Bpd60dULXNDa4bkiGSVpAOalQE7o8oxi7lKLzZh_r1sbRMGqO6sxFnbmog3_PL2EP</recordid><startdate>201302</startdate><enddate>201302</enddate><creator>Huang, Jeff</creator><creator>Zhou, Jinguo</creator><creator>Zhang, Charles</creator><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>8FD</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope></search><sort><creationdate>201302</creationdate><title>Scaling predictive analysis of concurrent programs by removing trace redundancy</title><author>Huang, Jeff ; Zhou, Jinguo ; Zhang, Charles</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c274t-fd463c14f643433c9a6939f1ecc6d724874b5af89e87f372729559edca5278233</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2013</creationdate><topic>Algorithms</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Huang, Jeff</creatorcontrib><creatorcontrib>Zhou, Jinguo</creatorcontrib><creatorcontrib>Zhang, Charles</creatorcontrib><collection>CrossRef</collection><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><jtitle>ACM transactions on software engineering and methodology</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Huang, Jeff</au><au>Zhou, Jinguo</au><au>Zhang, Charles</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Scaling predictive analysis of concurrent programs by removing trace redundancy</atitle><jtitle>ACM transactions on software engineering and methodology</jtitle><date>2013-02</date><risdate>2013</risdate><volume>22</volume><issue>1</issue><spage>1</spage><epage>21</epage><pages>1-21</pages><issn>1049-331X</issn><eissn>1557-7392</eissn><abstract>Predictive trace analysis (PTA) of concurrent programs is powerful in finding concurrency bugs unseen in past program executions. Unfortunately, existing PTA solutions face considerable challenges in scaling to large traces. In this article, we identify that a large percentage of events in the trace are redundant for presenting useful analysis results to the end user. Removing them from the trace can significantly improve the scalability of PTA without affecting the quality of the results. We present a trace redundancy theorem that specifies a redundancy criterion and the soundness guarantee that the PTA results are preserved after removing the redundancy. Based on this criterion, we design and implement TraceFilter, an efficient algorithm that automatically removes redundant events from a trace for the PTA of general concurrency access anomalies. We evaluated TraceFilter on a set of popular concurrent benchmarks as well as real world large server programs. Our experimental results show that TraceFilter is able to significantly improve the scalability of PTA by orders of magnitude, without impairing the analysis result.</abstract><doi>10.1145/2430536.2430542</doi><tpages>21</tpages></addata></record> |
fulltext | fulltext |
identifier | ISSN: 1049-331X |
ispartof | ACM transactions on software engineering and methodology, 2013-02, Vol.22 (1), p.1-21 |
issn | 1049-331X 1557-7392 |
language | eng |
recordid | cdi_proquest_miscellaneous_1506384307 |
source | ACM Digital Library |
subjects | Algorithms |
title | Scaling predictive analysis of concurrent programs by removing trace redundancy |
url | https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-04T17%3A17%3A21IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_cross&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Scaling%20predictive%20analysis%20of%20concurrent%20programs%20by%20removing%20trace%20redundancy&rft.jtitle=ACM%20transactions%20on%20software%20engineering%20and%20methodology&rft.au=Huang,%20Jeff&rft.date=2013-02&rft.volume=22&rft.issue=1&rft.spage=1&rft.epage=21&rft.pages=1-21&rft.issn=1049-331X&rft.eissn=1557-7392&rft_id=info:doi/10.1145/2430536.2430542&rft_dat=%3Cproquest_cross%3E1506384307%3C/proquest_cross%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=1506384307&rft_id=info:pmid/&rfr_iscdi=true |