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...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:ACM transactions on software engineering and methodology 2013-02, Vol.22 (1), p.1-21
Hauptverfasser: Huang, Jeff, Zhou, Jinguo, Zhang, Charles
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