Bounding the number of segment histories during data race detection

In this article we present a technique for reducing the memory overhead while performing data race detection. Data races occur when multiple threads modify the same memory location without proper synchronization. In order to detect data races, we need to check all read and write operations performed...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Parallel computing Ročník 28; číslo 9; s. 1221 - 1238
Hlavní autoři: Christiaens, Mark, Ronsse, Michiel, De Bosschere, Koen
Médium: Journal Article
Jazyk:angličtina
Vydáno: Elsevier B.V 01.09.2002
Témata:
ISSN:0167-8191, 1872-7336
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract In this article we present a technique for reducing the memory overhead while performing data race detection. Data races occur when multiple threads modify the same memory location without proper synchronization. In order to detect data races, we need to check all read and write operations performed by the threads. We describe a method for efficiently storing these read and write operations called “merging of segment histories”. This method improves upon known techniques by ensuring an upper limit to the amount of memory consumed for storing the read and write operations while maintaining the full accuracy of the data race detection. The method has been implemented in an existing data race detection tool called RecPlay for Solaris binaries. We show that it enables us to perform data race detection on benchmarks which were previously beyond our grasp.
AbstractList In this article we present a technique for reducing the memory overhead while performing data race detection. Data races occur when multiple threads modify the same memory location without proper synchronization. In order to detect data races, we need to check all read and write operations performed by the threads. We describe a method for efficiently storing these read and write operations called “merging of segment histories”. This method improves upon known techniques by ensuring an upper limit to the amount of memory consumed for storing the read and write operations while maintaining the full accuracy of the data race detection. The method has been implemented in an existing data race detection tool called RecPlay for Solaris binaries. We show that it enables us to perform data race detection on benchmarks which were previously beyond our grasp.
In this article we present a technique for reducing the memory overhead while performing data race detection. Data races occur when multiple threads modify the same memory location without proper synchronization. In order to detect data races, we need to check all read and write operations performed by the threads. We describe a method for efficiently storing these read and write operations called "merging of segment histories". This method improves upon known techniques by ensuring an upper limit to the amount of memory consumed for storing the read and write operations while maintaining the full accuracy of the data race detection. The method has been implemented in an existing data race detection tool called RecPlay for Solaris binaries. We show that it enables us to perform data race detection on benchmarks which were previously beyond our grasp. copyright 2002 Elsevier Science B.V. All rights reserved.
Author Christiaens, Mark
Ronsse, Michiel
De Bosschere, Koen
Author_xml – sequence: 1
  givenname: Mark
  surname: Christiaens
  fullname: Christiaens, Mark
  email: mchristi@elis.rug.ac.be
– sequence: 2
  givenname: Michiel
  surname: Ronsse
  fullname: Ronsse, Michiel
  email: ronsse@elis.rug.ac.be
– sequence: 3
  givenname: Koen
  surname: De Bosschere
  fullname: De Bosschere, Koen
  email: kdb@elis.rug.ac.be
BookMark eNqFkE1LAzEURYNUsK3-BCEr0cVokplk0pVo8QsKLtR1yCQvbaRNapIR_PdOrbh1897m3Av3TNAoxAAInVJySQkVVy_DaStJZ_ScsAtCaN1U_ACNqWxZ1da1GKHxH3KEJjm_E0JEI8kYzW9jH6wPS1xWgEO_6SDh6HCG5QZCwSufS0weMrZ92mFWF42TNoAtFDDFx3CMDp1eZzj5_VP0dn_3On-sFs8PT_ObRWWYFKXqjAbCOHTaMUosY0xoY40UppGSccJ5a2vjmBOuqyWj3HaGkVo2QGe107KeorN97zbFjx5yURufDazXOkDss2JCUNI2zQDyPWhSzDmBU9vkNzp9KUrUTpn6UaZ2PhRh6keZ4kPuep-DYcWnh6Sy8RAMWJ-GqcpG_0_DN2wcdQM
Cites_doi 10.1145/68210.69233
10.1109/HICSS.1988.11802
10.1145/312203.312214
10.1145/268998.266641
10.1145/223982.223990
10.1145/99163.99165
10.1145/359545.359563
10.1145/773473.178260
10.1016/S0927-5452(98)80040-3
ContentType Journal Article
Copyright 2002 Elsevier Science B.V.
Copyright_xml – notice: 2002 Elsevier Science B.V.
DBID AAYXX
CITATION
7SC
8FD
JQ2
L7M
L~C
L~D
DOI 10.1016/S0167-8191(02)00134-5
DatabaseName CrossRef
Computer and Information Systems Abstracts
Technology Research Database
ProQuest Computer Science Collection
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
DatabaseTitle CrossRef
Computer and Information Systems Abstracts
Technology Research Database
Computer and Information Systems Abstracts – Academic
Advanced Technologies Database with Aerospace
ProQuest Computer Science Collection
Computer and Information Systems Abstracts Professional
DatabaseTitleList
Computer and Information Systems Abstracts
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1872-7336
EndPage 1238
ExternalDocumentID 10_1016_S0167_8191_02_00134_5
S0167819102001345
GroupedDBID --K
--M
-~X
.DC
.~1
0R~
123
1B1
1~.
1~5
29O
4.4
457
4G.
5VS
6OB
7-5
71M
8P~
9JN
AACTN
AAEDT
AAEDW
AAIAV
AAIKJ
AAKOC
AALRI
AAOAW
AAQFI
AAQXK
AAXUO
AAYFN
ABBOA
ABEFU
ABFNM
ABJNI
ABMAC
ABXDB
ABYKQ
ACDAQ
ACGFS
ACNNM
ACRLP
ACZNC
ADBBV
ADEZE
ADJOM
ADMUD
ADTZH
AEBSH
AECPX
AEKER
AENEX
AFKWA
AFTJW
AGHFR
AGUBO
AGYEJ
AHHHB
AHJVU
AHZHX
AIALX
AIEXJ
AIKHN
AITUG
AJBFU
AJOXV
ALMA_UNASSIGNED_HOLDINGS
AMFUW
AMRAJ
AOUOD
ASPBG
AVWKF
AXJTR
AZFZN
BJAXD
BKOJK
BLXMC
CS3
DU5
EBS
EFJIC
EFLBG
EJD
EO8
EO9
EP2
EP3
F5P
FDB
FEDTE
FGOYB
FIRID
FNPLU
FYGXN
G-Q
G8K
GBLVA
GBOLZ
HLZ
HVGLF
HZ~
H~9
IHE
J1W
JJJVA
KOM
LG9
M41
MO0
N9A
O-L
O9-
OAUVE
OZT
P-8
P-9
P2P
PC.
Q38
R2-
RIG
ROL
RPZ
SBC
SCC
SDF
SDG
SDP
SES
SEW
SPC
SPCBC
SST
SSV
SSZ
T5K
WH7
WUQ
XPP
ZMT
~G-
9DU
AATTM
AAXKI
AAYWO
AAYXX
ABDPE
ABWVN
ACLOT
ACRPL
ACVFH
ADCNI
ADNMO
AEIPS
AEUPX
AFJKZ
AFPUW
AGQPQ
AIGII
AIIUN
AKBMS
AKRWK
AKYEP
ANKPU
APXCP
CITATION
EFKBS
~HD
7SC
8FD
JQ2
L7M
L~C
L~D
ID FETCH-LOGICAL-c286t-bcae025ebaf210d2226acdc86c488250557d3cf2f6fb38215dbc20384e193fa83
ISICitedReferencesCount 2
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000178261600001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0167-8191
IngestDate Sun Sep 28 01:53:01 EDT 2025
Sat Nov 29 03:58:55 EST 2025
Fri Feb 23 02:30:41 EST 2024
IsPeerReviewed true
IsScholarly true
Issue 9
Keywords Data race detection
Debugging
Multi-threaded programming
Language English
License https://www.elsevier.com/tdm/userlicense/1.0
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c286t-bcae025ebaf210d2226acdc86c488250557d3cf2f6fb38215dbc20384e193fa83
Notes ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
PQID 26610744
PQPubID 23500
PageCount 18
ParticipantIDs proquest_miscellaneous_26610744
crossref_primary_10_1016_S0167_8191_02_00134_5
elsevier_sciencedirect_doi_10_1016_S0167_8191_02_00134_5
PublicationCentury 2000
PublicationDate 2002-09-01
PublicationDateYYYYMMDD 2002-09-01
PublicationDate_xml – month: 09
  year: 2002
  text: 2002-09-01
  day: 01
PublicationDecade 2000
PublicationTitle Parallel computing
PublicationYear 2002
Publisher Elsevier B.V
Publisher_xml – name: Elsevier B.V
References Kuck and Associates, Inc., 1906 Fox Drive, Champaign, IL 61820-7345, USA. Assure User's Manual, 2.0 edition, 1999
Collier (BIB3) 1992
Lamport (BIB10) 1978; 21
M. Christiaens, K. De Bosschere, Trade a topological approach to on-the-fly race detection in Java programs, in: Proceedings of the Java Virtual Machine Research and Technology Symposium 2001, Monterey, California, USA, April 2001 USENIX, pp. 105–116
Detecting data races in parallel program executions, volume advances in languages and compilers for parallel processing, Research Monographs in Parallel and Distributed Computing, pp. 109–129, MIT press, Cambridge, MA, 1991 (chapter 6)
KL Group, 260 King Street East, Toronto, Ontario, Canada, Getting Started with JProbe
S. Woo, M. Ohara, E. Torrie, J. Singh, A. Gupta, The SPLASH-2 programs: characterization and methodological considerations, in: 22nd International Symposium on Computer Architecture, Santa Margherita Ligure, Italy, 1995, pp. 24–36
De Bosschere, Ronsse (BIB4) 1997
C.J. Fidge, Partial orders for parallel debugging, in: Proceedings of the ACM SIGPLAN and SIGOPS Workshop on Parallel and distributed debugging, 1988, pp. 183–194
Mattern (BIB11) 1989
A. Srivastava, A. Eustace, ATOM a system for building customized program analysis tools, in: Proceedings of the Conference on Programming Language Design and Implementation, ACM, 1994, pp. 196–205
S. Savage, M. Burrows, G. Nelson, P. Sobalvarro, T. Anderson, Eraser: a dynamic data race detector for multi-threaded programs, in: Operating Systems Review ACM, 31, 1997, pp. 27–37
A. Dinning, E. Schonberg, An empirical comparison of monitoring algorithms for access anomaly detection, in: Second ACM SIGPLAN symposium on Principles & practice of parallel programming, 1990, pp. 1–10
M. Ronsse, K. De Bosschere. JiTI: Tracing memory references for data race detection, in: E. D'Hollander, F.J. Joubert, U. Trottenberg, (Ed.), Proceedings of ParCo97: Parallel Computing: Fundamentals, Applications and New Directions, vol. 12, Advances in Parallel Computing, Bonn, February 1998, North Holland, Amsterdam, pp. 327–334
D. Haban, W. Weigel, Global events and global breakpoints in distributed systems, in: 21st Annual Hawaii International Conference on System Sciences, vol. II, IEEE Computer Society, 1988, pp. 166–175
Ronsse, Bosschere (BIB13) 1999; 17
De Bosschere (10.1016/S0167-8191(02)00134-5_BIB4) 1997
10.1016/S0167-8191(02)00134-5_BIB5
Lamport (10.1016/S0167-8191(02)00134-5_BIB10) 1978; 21
10.1016/S0167-8191(02)00134-5_BIB2
10.1016/S0167-8191(02)00134-5_BIB9
10.1016/S0167-8191(02)00134-5_BIB8
10.1016/S0167-8191(02)00134-5_BIB7
10.1016/S0167-8191(02)00134-5_BIB6
Mattern (10.1016/S0167-8191(02)00134-5_BIB11) 1989
10.1016/S0167-8191(02)00134-5_BIB12
10.1016/S0167-8191(02)00134-5_BIB1
10.1016/S0167-8191(02)00134-5_BIB14
10.1016/S0167-8191(02)00134-5_BIB16
Ronsse (10.1016/S0167-8191(02)00134-5_BIB13) 1999; 17
10.1016/S0167-8191(02)00134-5_BIB15
Collier (10.1016/S0167-8191(02)00134-5_BIB3) 1992
References_xml – volume: 21
  start-page: 558
  year: 1978
  end-page: 565
  ident: BIB10
  article-title: Time clocks and the ordering of events in a distributed system
  publication-title: Communications of the ACM
– start-page: 215
  year: 1989
  end-page: 226
  ident: BIB11
  article-title: Virtual time and global states of distributed systems
  publication-title: Workshop on Parallel and Distributed Algorithms
– year: 1992
  ident: BIB3
  article-title: Reasoning about Parallel Architectures
– start-page: 324
  year: 1997
  end-page: 330
  ident: BIB4
  article-title: Clock snooping and its application in on-the-fly data race detection
  publication-title: International Symposium on Parallel Architectures Algorithms and Networks (ISPAN '97) IEEE Computer Society
– reference: D. Haban, W. Weigel, Global events and global breakpoints in distributed systems, in: 21st Annual Hawaii International Conference on System Sciences, vol. II, IEEE Computer Society, 1988, pp. 166–175
– reference: M. Ronsse, K. De Bosschere. JiTI: Tracing memory references for data race detection, in: E. D'Hollander, F.J. Joubert, U. Trottenberg, (Ed.), Proceedings of ParCo97: Parallel Computing: Fundamentals, Applications and New Directions, vol. 12, Advances in Parallel Computing, Bonn, February 1998, North Holland, Amsterdam, pp. 327–334
– reference: S. Woo, M. Ohara, E. Torrie, J. Singh, A. Gupta, The SPLASH-2 programs: characterization and methodological considerations, in: 22nd International Symposium on Computer Architecture, Santa Margherita Ligure, Italy, 1995, pp. 24–36
– reference: A. Dinning, E. Schonberg, An empirical comparison of monitoring algorithms for access anomaly detection, in: Second ACM SIGPLAN symposium on Principles & practice of parallel programming, 1990, pp. 1–10
– reference: C.J. Fidge, Partial orders for parallel debugging, in: Proceedings of the ACM SIGPLAN and SIGOPS Workshop on Parallel and distributed debugging, 1988, pp. 183–194
– reference: KL Group, 260 King Street East, Toronto, Ontario, Canada, Getting Started with JProbe
– reference: Kuck and Associates, Inc., 1906 Fox Drive, Champaign, IL 61820-7345, USA. Assure User's Manual, 2.0 edition, 1999
– volume: 17
  start-page: 133
  year: 1999
  end-page: 152
  ident: BIB13
  article-title: RecPlay: a fully integrated practical record/replay system
  publication-title: ACM Transactions on Computer Systems
– reference: S. Savage, M. Burrows, G. Nelson, P. Sobalvarro, T. Anderson, Eraser: a dynamic data race detector for multi-threaded programs, in: Operating Systems Review ACM, 31, 1997, pp. 27–37
– reference: A. Srivastava, A. Eustace, ATOM a system for building customized program analysis tools, in: Proceedings of the Conference on Programming Language Design and Implementation, ACM, 1994, pp. 196–205
– reference: Detecting data races in parallel program executions, volume advances in languages and compilers for parallel processing, Research Monographs in Parallel and Distributed Computing, pp. 109–129, MIT press, Cambridge, MA, 1991 (chapter 6)
– reference: M. Christiaens, K. De Bosschere, Trade a topological approach to on-the-fly race detection in Java programs, in: Proceedings of the Java Virtual Machine Research and Technology Symposium 2001, Monterey, California, USA, April 2001 USENIX, pp. 105–116
– ident: 10.1016/S0167-8191(02)00134-5_BIB6
  doi: 10.1145/68210.69233
– ident: 10.1016/S0167-8191(02)00134-5_BIB7
  doi: 10.1109/HICSS.1988.11802
– volume: 17
  start-page: 133
  issue: 2
  year: 1999
  ident: 10.1016/S0167-8191(02)00134-5_BIB13
  article-title: RecPlay: a fully integrated practical record/replay system
  publication-title: ACM Transactions on Computer Systems
  doi: 10.1145/312203.312214
– ident: 10.1016/S0167-8191(02)00134-5_BIB14
  doi: 10.1145/268998.266641
– start-page: 324
  year: 1997
  ident: 10.1016/S0167-8191(02)00134-5_BIB4
  article-title: Clock snooping and its application in on-the-fly data race detection
– ident: 10.1016/S0167-8191(02)00134-5_BIB16
  doi: 10.1145/223982.223990
– ident: 10.1016/S0167-8191(02)00134-5_BIB5
  doi: 10.1145/99163.99165
– volume: 21
  start-page: 558
  issue: 7
  year: 1978
  ident: 10.1016/S0167-8191(02)00134-5_BIB10
  article-title: Time clocks and the ordering of events in a distributed system
  publication-title: Communications of the ACM
  doi: 10.1145/359545.359563
– ident: 10.1016/S0167-8191(02)00134-5_BIB2
– ident: 10.1016/S0167-8191(02)00134-5_BIB15
  doi: 10.1145/773473.178260
– ident: 10.1016/S0167-8191(02)00134-5_BIB1
– start-page: 215
  year: 1989
  ident: 10.1016/S0167-8191(02)00134-5_BIB11
  article-title: Virtual time and global states of distributed systems
– year: 1992
  ident: 10.1016/S0167-8191(02)00134-5_BIB3
– ident: 10.1016/S0167-8191(02)00134-5_BIB9
– ident: 10.1016/S0167-8191(02)00134-5_BIB8
– ident: 10.1016/S0167-8191(02)00134-5_BIB12
  doi: 10.1016/S0927-5452(98)80040-3
SSID ssj0006480
Score 1.6070966
Snippet In this article we present a technique for reducing the memory overhead while performing data race detection. Data races occur when multiple threads modify the...
SourceID proquest
crossref
elsevier
SourceType Aggregation Database
Index Database
Publisher
StartPage 1221
SubjectTerms Data race detection
Debugging
Multi-threaded programming
Title Bounding the number of segment histories during data race detection
URI https://dx.doi.org/10.1016/S0167-8191(02)00134-5
https://www.proquest.com/docview/26610744
Volume 28
WOSCitedRecordID wos000178261600001&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVESC
  databaseName: Elsevier SD Freedom Collection Journals 2021
  customDbUrl:
  eissn: 1872-7336
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0006480
  issn: 0167-8191
  databaseCode: AIEXJ
  dateStart: 19950101
  isFulltext: true
  titleUrlDefault: https://www.sciencedirect.com
  providerName: Elsevier
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1JbxMxFLZCyoELLZsoheIDB1A1kHg2-9gNsUhVBUXKzRp77KpSNamSSdWfz3veMqIgFonLKJo4tua9L-999ryFkFdTBUptSp2B8S-zQmuVCS4wmArcedlURVkr12yiPjnhs5k4HY1WMRfm-rLuOn5zI67-q6rhHigbU2f_Qt1pUrgBn0HpcAW1w_WPFH-AjZJiEpRv-IGMcGnO3Xt_X2AY9scxQxFjRPcWjcYEqt4FZnVDxnraLLDdyqULPl_10dPFAr1gIEw4sR5k_XyBh_MdGzHU9MKkMI4js3cAbhmR4r7-PA-paPHggaXIqnAadisjxh9QguHFTaD3L96o8hpYfO4LnUSry_gAXWJgQqeMTQfuGDwr_6mp96cOX9OCQMixmKxAUltk5dq_pahDNxaHTpgbVN4hG6wuBR-Tjf2Px7NPyYVXhWu5l-Zep369Wy_4esLehMV-RWp-cO-Os5xtkfths0H3PUgekJHpHpLN2MiDBrv-iBxGzFDADPWYoXNLA2Zowgz1mKGIGYqYoQkzj8m398dnhx-y0F0j04xXfaZ0Y4DwGtVY2Pa3wBOrRreaVxpsOhLjsm5zbZmtrMo5MMNWaTbJeWGA89uG50_IuJt35imBpbStc-D6DDYTquDCTLVRzOZWCKVEu03eRvHIK19ERQ6iC6taojzlhEknT1luEx6FKAMT9AxPgvZ_99OXUegSLCW-_mo6M18tJVJRIMzFs3-ffIfcW_8TnpNxv1iZF-Suvu4vlovdgKLvLdCJCg
linkProvider Elsevier
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%3Ajournal&rft.genre=article&rft.atitle=Bounding+the+number+of+segment+histories+during+data+race+detection&rft.jtitle=Parallel+computing&rft.au=Christiaens%2C+Mark&rft.au=Ronsse%2C+Michiel&rft.au=De+Bosschere%2C+Koen&rft.date=2002-09-01&rft.pub=Elsevier+B.V&rft.issn=0167-8191&rft.eissn=1872-7336&rft.volume=28&rft.issue=9&rft.spage=1221&rft.epage=1238&rft_id=info:doi/10.1016%2FS0167-8191%2802%2900134-5&rft.externalDocID=S0167819102001345
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0167-8191&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0167-8191&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0167-8191&client=summon