Detecting atomic-set serializability violations in multithreaded programs through active randomized testing

Concurrency bugs are notoriously difficult to detect because there can be vast combinations of interleavings among concurrent threads, yet only a small fraction can reveal them. Atomic-set serializability characterizes a wide range of concurrency bugs, including data races and atomicity violations....

Full description

Saved in:
Bibliographic Details
Published in2010 ACM/IEEE 32nd International Conference on Software Engineering Vol. 1; pp. 235 - 244
Main Authors Lai, Zhifeng, Cheung, S. C., Chan, W. K.
Format Conference Proceeding
LanguageEnglish
Japanese
Published New York, NY, USA ACM 01.05.2010
IEEE
SeriesACM Conferences
Subjects
Online AccessGet full text
ISBN9781605587196
1605587192
ISSN0270-5257
DOI10.1145/1806799.1806836

Cover

Abstract Concurrency bugs are notoriously difficult to detect because there can be vast combinations of interleavings among concurrent threads, yet only a small fraction can reveal them. Atomic-set serializability characterizes a wide range of concurrency bugs, including data races and atomicity violations. In this paper, we propose a two-phase testing technique that can effectively detect atomic-set serializability violations. In Phase I, our technique infers potential violations that do not appear in a concrete execution and prunes those interleavings that are violation-free. In Phase II, our technique actively controls a thread scheduler to enumerate these potential scenarios identified in Phase I to look for real violations. We have implemented our technique as a prototype system AssetFuzzer and applied it to a number of subject programs for evaluating concurrency defect analysis techniques. The experimental results show that AssetFuzzer can identify more concurrency bugs than two recent testing tools RaceFuzzer and AtomFuzzer.
AbstractList Concurrency bugs are notoriously difficult to detect because there can be vast combinations of interleavings among concurrent threads, yet only a small fraction can reveal them. Atomic-set serializability characterizes a wide range of concurrency bugs, including data races and atomicity violations. In this paper, we propose a two-phase testing technique that can effectively detect atomic-set serializability violations. In Phase I, our technique infers potential violations that do not appear in a concrete execution and prunes those interleavings that are violation-free. In Phase II, our technique actively controls a thread scheduler to enumerate these potential scenarios identified in Phase I to look for real violations. We have implemented our technique as a prototype system AssetFuzzer and applied it to a number of subject programs for evaluating concurrency defect analysis techniques. The experimental results show that AssetFuzzer can identify more concurrency bugs than two recent testing tools RaceFuzzer and AtomFuzzer.
Author Cheung, S. C.
Lai, Zhifeng
Chan, W. K.
Author_xml – sequence: 1
  givenname: Zhifeng
  surname: Lai
  fullname: Lai, Zhifeng
  organization: Hong Kong University of Science and Technology, Kowloon, Hong Kong
– sequence: 2
  givenname: S. C.
  surname: Cheung
  fullname: Cheung, S. C.
  organization: Hong Kong University of Science and Technology, Kowloon, Hong Kong
– sequence: 3
  givenname: W. K.
  surname: Chan
  fullname: Chan, W. K.
  organization: City University of Hong Kong, Tat Chee Avenue, Hong Kong
BookMark eNqNkEtrwzAQhAVNoWmacw-96NiL05VtPXws6RMCvbRnI0ubRI1tBUkJJL--DskP6F4GdoYZ-G7JqPc9EnLPYMZYyZ-YAiGranZSVYgrMq2kYgI4V5JVYkTGkEvIeM7lDZnG-AvDiQIYgzHZvGBCk1y_ojr5zpksYqIRg9OtO-rGtS4d6N75Vifn-0hdT7tdm1xaB9QWLd0Gvwq6i3T4-N1qTfVQt0cadG-HwuMQSRhPC3fkeqnbiNOLTsjP2-v3_CNbfL1_zp8XmWZcQSYLLsumYdZIU5a5VarkKheAOUBhwC6Xxhoo8xJQYQVKMFtoaKAyViJYUUzIw7nXIWK9Da7T4VALEDlUbHAfz642Xd14v4k1g_pEsr6QrC8kh-jsn9G6CQ6XxR-8QnVR
ContentType Conference Proceeding
Copyright 2010 ACM
Copyright_xml – notice: 2010 ACM
DBID 6IE
6IH
CBEJK
RIE
RIO
DOI 10.1145/1806799.1806836
DatabaseName IEEE Electronic Library (IEL) Conference Proceedings
IEEE Proceedings Order Plan (POP) 1998-present by volume
IEEE Xplore All Conference Proceedings
IEEE Electronic Library (IEL)
IEEE Proceedings Order Plans (POP) 1998-present
DatabaseTitleList

Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://proxy.k.utb.cz/login?url=https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EndPage 244
ExternalDocumentID 6062091
Genre orig-research
GroupedDBID 6IE
6IF
6IG
6IH
6IK
6IL
6IM
6IN
AAJGR
ACM
ADPZR
ALMA_UNASSIGNED_HOLDINGS
APO
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CBEJK
GUFHI
IEGSK
IERZE
IJVOP
OCL
RIB
RIC
RIE
RIL
RIO
-~X
.4S
.DC
123
23M
29O
5VS
8US
AAWTH
ABLEC
ADZIZ
AFFNX
ARCSS
AVWKF
CHZPO
EDO
FEDTE
I-F
I07
IPLJI
M43
RNS
XOL
ID FETCH-LOGICAL-a1580-73574bb1dc7c442d88458260e2003c0dffcdc04240e8e90861d3a0b09cd7e0d63
IEDL.DBID RIE
ISBN 9781605587196
1605587192
ISSN 0270-5257
IngestDate Wed Aug 27 02:38:14 EDT 2025
Wed Jan 31 06:43:37 EST 2024
Wed Jan 31 06:47:57 EST 2024
IsPeerReviewed false
IsScholarly true
Keywords serializability
dynamic analysis
atomicity
software testing
Language English
Japanese
License Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from Permissions@acm.org
LinkModel DirectLink
MeetingName ICSE '10: 32nd International Conference on Software Engineering
MergedId FETCHMERGED-LOGICAL-a1580-73574bb1dc7c442d88458260e2003c0dffcdc04240e8e90861d3a0b09cd7e0d63
PageCount 10
ParticipantIDs acm_books_10_1145_1806799_1806836
acm_books_10_1145_1806799_1806836_brief
ieee_primary_6062091
PublicationCentury 2000
PublicationDate 20100501
2010-May
PublicationDateYYYYMMDD 2010-05-01
PublicationDate_xml – month: 05
  year: 2010
  text: 20100501
  day: 01
PublicationDecade 2010
PublicationPlace New York, NY, USA
PublicationPlace_xml – name: New York, NY, USA
PublicationSeriesTitle ACM Conferences
PublicationTitle 2010 ACM/IEEE 32nd International Conference on Software Engineering
PublicationTitleAbbrev icse
PublicationYear 2010
Publisher ACM
IEEE
Publisher_xml – name: ACM
– name: IEEE
SSID ssj0000630110
ssj0006499
Score 1.7278881
Snippet Concurrency bugs are notoriously difficult to detect because there can be vast combinations of interleavings among concurrent threads, yet only a small...
SourceID ieee
acm
SourceType Publisher
StartPage 235
SubjectTerms atomicity
Computer bugs
Concrete
Concurrent computing
dynamic analysis
General and reference -- Cross-computing tools and techniques -- Reliability
Instruction sets
Monitoring
serializability
Software and its engineering -- Software creation and management -- Software verification and validation -- Software defect analysis -- Software testing and debugging
Software and its engineering -- Software organization and properties -- Extra-functional properties -- Software reliability
software testing
Synchronization
Testing
Title Detecting atomic-set serializability violations in multithreaded programs through active randomized testing
URI https://ieeexplore.ieee.org/document/6062091
Volume 1
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3dS8MwEA9zTz75sYnziwiCL2amXdOmz34gwsQHB76VJrnKEKts3YP-9d6l2UQR9KlpSUPKpbnc3e9-x9iJjZWtVJYJNGidIEY5YfCcLFDZRk4ZLRVQcvL4Lr2ZJLeP6rHDzla5MADgwWcwpKaP5btXuyBX2TkOEktKVV_LdNrmaq38KcQd5VVZ2IXTxNeORKtLCmL8pKQuPLorNBDyOHA9Le_TwPkTJeo80uRayYd09cTNa6V9-VZ6xWue6w02Xs65BZw8DxeNGdqPH3SO__2oTdb_yvHj9yvttcU6UG-zjWWRBx7--R57vgSKM2Afjvb5y9SKOTS8XbiECCNs7Tun-H7r--PTmnuUYoOrpHTgeICAzXmoCcRLv8dy1JIOB_zALg1xfdRPfTa5vnq4uBGhQoMoI6WlyEYqS4yJnM1sksROawrDpRII8malqyrrLAVXJWjI0XqK3KiURubWZSBdOtph3fq1hl3GszzSzlSxKtMqycHoHLCJbyoFMo_LATtGQRRkesyLNptaFUFYRRDWgJ3-2acwsylUA9YjSRRvLaVHEYSw9_vjfba-BA3I6IB1m9kCDvEs0pgjvwg_AfAT0zA
linkProvider IEEE
linkToHtml http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwjV3fb9MwED6N8QBPA7ZphQGeNIkX3DmpnR_PwFRgnXhopb1FsX2ZqqkpWtMH9tfvznGLmCaNpziRYzk6x-e7--47gFOXGteYPJdk0HrJjHLS0jlZkrJNvLGFMsjJyZPLbDzTP67M1Q583ubCIGIAn-GQmyGW75duza6yMxokVZyq_txorU2frbX1qDB7VFBmcR_OdKgeSXaXksz5yWlddHg3ZCKUaWR72txnkfUn0eYsKdi5Ug75Gqibn9Vu8U_xlaB7zvdgspl1Dzm5Ga47O3R3Dwgd__ezXsHB3yw_8Wurv17DDrZvYG9T5kHEv34fbr4iRxqojyALfTF3coWd6JcuY8IYXftHcIS_9_6JeSsCTrGjdVJ79CKCwFYiVgUSddhlBelJTwPeUZeO2T7a6wOYnX-bfhnLWKNB1okplMxHJtfWJt7lTuvUFwUH4jKFDHpzyjeN847DqwoLLMl-SvyoVlaVzueofDY6hN122eIRiLxMCm-b1NRZo0u0RYnUpDeNQVWm9QBOSBAVGx-rqs-nNlUUVhWFNYBPT_ap7O0cmwHssySq3z2pRxWF8Pbxxx_hxXg6uaguvl_-fAcvNxAClRzDbne7xvd0Munsh7Ag7wExNdZ9
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=proceeding&rft.title=Proceedings+of+the+32nd+ACM%2FIEEE+International+Conference+on+Software+Engineering+-+Volume+1&rft.atitle=Detecting+atomic-set+serializability+violations+in+multithreaded+programs+through+active+randomized+testing&rft.au=Lai%2C+Zhifeng&rft.au=Cheung%2C+S.+C.&rft.au=Chan%2C+W.+K.&rft.series=ACM+Conferences&rft.date=2010-05-01&rft.pub=ACM&rft.isbn=9781605587196&rft.spage=235&rft.epage=244&rft_id=info:doi/10.1145%2F1806799.1806836
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0270-5257&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0270-5257&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0270-5257&client=summon