Falcon fault localization in concurrent programs

Concurrency fault are difficult to find because they usually occur under specific thread interleavings. Fault-detection tools in this area find data-access patterns among thread interleavings, but they report benign patterns as well as actual faulty patterns. Traditional fault-localization technique...

Full description

Saved in:
Bibliographic Details
Published in:2010 ACM/IEEE 32nd International Conference on Software Engineering Vol. 1; pp. 245 - 254
Main Authors: Park, Sangmin, Vuduc, Richard W., Harrold, Mary Jean
Format: Conference Proceeding
Language:English
Published: New York, NY, USA ACM 01.05.2010
IEEE
Series:ACM Conferences
Subjects:
ISBN:9781605587196, 1605587192
ISSN:0270-5257
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract Concurrency fault are difficult to find because they usually occur under specific thread interleavings. Fault-detection tools in this area find data-access patterns among thread interleavings, but they report benign patterns as well as actual faulty patterns. Traditional fault-localization techniques have been successful in identifying faults in sequential, deterministic programs, but they cannot detect faulty data-access patterns among threads. This paper presents a new dynamic fault-localization technique that can pinpoint faulty data-access patterns in multi-threaded concurrent programs. The technique monitors memory-access sequences among threads, detects data-access patterns associated with a program's pass/fail results, and reports dataaccess patterns with suspiciousness scores. The paper also presents the description of a prototype implementation of the technique in Java, and the results of an empirical study we performed with the prototype on several Java benchmarks. The empirical study shows that the technique can effectively and efficiently localize the faults for our subjects.
AbstractList Concurrency fault are difficult to find because they usually occur under specific thread interleavings. Fault-detection tools in this area find data-access patterns among thread interleavings, but they report benign patterns as well as actual faulty patterns. Traditional fault-localization techniques have been successful in identifying faults in sequential, deterministic programs, but they cannot detect faulty data-access patterns among threads. This paper presents a new dynamic fault-localization technique that can pinpoint faulty data-access patterns in multi-threaded concurrent programs. The technique monitors memory-access sequences among threads, detects data-access patterns associated with a program's pass/fail results, and reports dataaccess patterns with suspiciousness scores. The paper also presents the description of a prototype implementation of the technique in Java, and the results of an empirical study we performed with the prototype on several Java benchmarks. The empirical study shows that the technique can effectively and efficiently localize the faults for our subjects.
Author Harrold, Mary Jean
Vuduc, Richard W.
Park, Sangmin
Author_xml – sequence: 1
  givenname: Sangmin
  surname: Park
  fullname: Park, Sangmin
  organization: Georgia Institute of Technology
– sequence: 2
  givenname: Richard W.
  surname: Vuduc
  fullname: Vuduc, Richard W.
  organization: Georgia Institute of Technology
– sequence: 3
  givenname: Mary Jean
  surname: Harrold
  fullname: Harrold, Mary Jean
  organization: Georgia Institute of Technology
BookMark eNqNj71Ow0AQhFciIEJwTcEL0Njs3v-VKCIBKVKaUJ_O5z3JkNjIpuHtcRQ_ANNMMZ9G-u5g0fUdAzwQVkRKP5NDY72vzu2ku4LCW0cGtXaWvFnAEoXFUgttb6EYx0-cYiQS4RJuNvGY-u4ernM8jlzMvYKPzeth_Vbu9tv39cuujGTETxk5saOo0NeuaaRkWROLBrN16FOjfJSq0cpY62XmrITAPBEm-pgEZS1X8Hj5bZk5fA_tKQ6_waAR6MW0Pl3WmE6h7vuvMRCGs2SYJcMsOaHVP9FQDy1n-Qe-806a
ContentType Conference Proceeding
Copyright 2010 ACM
Copyright_xml – notice: 2010 ACM
DBID 6IE
6IH
CBEJK
RIE
RIO
DOI 10.1145/1806799.1806838
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/IET Electronic Library
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EndPage 254
ExternalDocumentID 6062092
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-a162t-aece81a409b8dd33e3b1e2d0f7809cd49a34d5467793fef4220fb1e6a9ac21f53
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
IsPeerReviewed false
IsScholarly true
Keywords debugging
fault localization
atomicity violation
order violation
concurrency
Language English
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-a162t-aece81a409b8dd33e3b1e2d0f7809cd49a34d5467793fef4220fb1e6a9ac21f53
PageCount 10
ParticipantIDs acm_books_10_1145_1806799_1806838
acm_books_10_1145_1806799_1806838_brief
ieee_primary_6062092
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 2.1788194
Snippet Concurrency fault are difficult to find because they usually occur under specific thread interleavings. Fault-detection tools in this area find data-access...
SourceID ieee
acm
SourceType Publisher
StartPage 245
SubjectTerms atomicity violation
Computing methodologies -- Parallel computing methodologies -- Parallel programming languages
concurrency
Concurrent computing
debugging
fault localization
Information systems -- Data management systems -- Middleware for databases -- Distributed transaction monitors
Instruction sets
Java
Message systems
order violation
Software and its engineering -- Software creation and management -- Software verification and validation
Software and its engineering -- Software creation and management -- Software verification and validation -- Process validation -- Traceability
Software and its engineering -- Software creation and management -- Software verification and validation -- Software defect analysis -- Software testing and debugging
Software and its engineering -- Software notations and tools -- General programming languages -- Language types -- Parallel programming languages
Software and its engineering -- Software organization and properties -- Contextual software domains -- Operating systems -- Process management -- Monitors
Statistical analysis
Testing
Subtitle fault localization in concurrent programs
Title Falcon
URI https://ieeexplore.ieee.org/document/6062092
Volume 1
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEB6qePBUtRXrixUEL6bdZF9Zr2LxIKUHld6WPCZQ0K20W3-_STatCIJ42mw2gTBsZjIz-b4BuOYmyVLMMqKRSZKKhBJpkBIlc8XiEmXsiedfn4rJhM9m5bQDt1ssDCL6y2c4dE2fy9cLtXahspE9bNv5VuHuFEXRYrW28RTHHeVNWdDCeeprR1qvKyaO8dOBuuzRPbMOQskC19PmPQ-cPzTNRpS70Eo5dE_uUStCvf8oveItz7j7vzUfQP8bwhdNt8bpEDpYH0F3U8MhClu6B3QsXErqLjJi_dZE3rQFaGY0ryP7SbUMTlG4ybXqw8v44fn-kYQyCkTQnDVEoEJOhXXkJNc6STCRFJmOTcHjUum0FEmqM6sw7VY1aFLGYmNH5KIUilGTJcewWy9qPIFI5pop1CrHwhELKi5NmqMWmhnjugdwZaVVOf9gVbWQ56wKEq2CRAdw8-eYSi7naAbQc_KsPlrejSqI8vT37jPY32T2Y3oOu81yjRewpz6b-Wp56X-WLx8jtIY
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1LSwMxEB6KCnqq2or1uYLgxW032WS761UsFWvpoUpvSx4TKGgrffj7TdK0IgjiabPZBMKwmcnM5PsG4Do3KWfIeayRypiJlMTSIImVzBRNCpSJJ55_7bX7_Xw0KgYVuN1gYRDRXz7Dpmv6XL6eqqULlbXsYdvOtwp3mzNGyQqttYmoOPYob8yCHs6Yrx5p_a4kdpyfDtZlD-_cuggFDWxP6_cssP4Qxlskd8GVoumeucetCPX-o_iKtz2d6v9WvQ_1bxBfNNiYpwOo4OQQqusqDlHY1DUgHeGSUneREcu3ReSNWwBnRuNJZD-pFYdTFO5yzevw0nkY3nfjUEghFiSji1igwpwI68rJXOs0xVQSpDox7TwplGaFSJnmVmXazWrQMEoTY0dkohCKEsPTI9iaTCd4DJHMNFWoVYZtRy2ocmlYhlpoaozrbsCVlVbpPIR5uQI98zJItAwSbcDNn2NKORujaUDNybP8WDFvlEGUJ793X8Jud_jcK3uP_adT2Fvn-RNyBluL2RLPYUd9Lsbz2YX_cb4Au1W3zQ
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=2010+ACM%2FIEEE+32nd+International+Conference+on+Software+Engineering&rft.atitle=Falcon%3A+fault+localization+in+concurrent+programs&rft.au=Sangmin+Park&rft.au=Vuduc%2C+R.+W.&rft.au=Harrold%2C+M.+J.&rft.date=2010-05-01&rft.pub=IEEE&rft.isbn=9781605587196&rft.issn=0270-5257&rft.volume=1&rft.spage=245&rft.epage=254&rft_id=info:doi/10.1145%2F1806799.1806838&rft.externalDocID=6062092
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