Output nondeterminism detection for programming models combining dataflow with shared memory

•We identify output nondeterminism errors in dataflow applications on shared memory.•A technique for detecting output nondeterminism based on happens-before relation is proposed.•A tool using this technique detects real and synthesized bugs in dataflow programs.•Extensive evaluation of the tool usin...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Parallel computing Ročník 71; s. 42 - 57
Hlavní autoři: Matar, Hassan Salehe, Mutlu, Erdal, Tasiran, Serdar, Unat, Didem
Médium: Journal Article
Jazyk:angličtina
Vydáno: Elsevier B.V 01.01.2018
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 •We identify output nondeterminism errors in dataflow applications on shared memory.•A technique for detecting output nondeterminism based on happens-before relation is proposed.•A tool using this technique detects real and synthesized bugs in dataflow programs.•Extensive evaluation of the tool using real and synthesized bugs is presented.•A method to detect commuting tasks that result in false alarms is proposed. Implementing highly concurrent programs can be challenging because programmers can easily introduce unintended nondeterminism, which has the potential to affect the program output. We propose and implement a technique for detecting unintended nondeterminism in applications developed on shared memory systems with dataflow execution model. Such nondeterminism bugs may be caused by missing or incorrect ordering of task dependencies that are used for ensuring certain ordering of tasks. The proposed method is based on the formulation of happens-before relation on tasks executions in a dataflow dependency graph. Its implementation is composed of two main phases; log recording and detection. For recording the necessary information from the execution, the tool instruments the dataflow framework and the applications, on top of the LLVM compiler infrastructure. Later it processes the collected log and reports on the found output nondeterminism in the execution. The tool can integrate well with the development cycle to provide the programmer with a testing framework against possible nondeterminism bugs. To demonstrate its effectiveness, we study a set of benchmark applications written in Atomic DataFlow programming model and report on real nondeterminism bugs in them.
AbstractList •We identify output nondeterminism errors in dataflow applications on shared memory.•A technique for detecting output nondeterminism based on happens-before relation is proposed.•A tool using this technique detects real and synthesized bugs in dataflow programs.•Extensive evaluation of the tool using real and synthesized bugs is presented.•A method to detect commuting tasks that result in false alarms is proposed. Implementing highly concurrent programs can be challenging because programmers can easily introduce unintended nondeterminism, which has the potential to affect the program output. We propose and implement a technique for detecting unintended nondeterminism in applications developed on shared memory systems with dataflow execution model. Such nondeterminism bugs may be caused by missing or incorrect ordering of task dependencies that are used for ensuring certain ordering of tasks. The proposed method is based on the formulation of happens-before relation on tasks executions in a dataflow dependency graph. Its implementation is composed of two main phases; log recording and detection. For recording the necessary information from the execution, the tool instruments the dataflow framework and the applications, on top of the LLVM compiler infrastructure. Later it processes the collected log and reports on the found output nondeterminism in the execution. The tool can integrate well with the development cycle to provide the programmer with a testing framework against possible nondeterminism bugs. To demonstrate its effectiveness, we study a set of benchmark applications written in Atomic DataFlow programming model and report on real nondeterminism bugs in them.
Author Tasiran, Serdar
Mutlu, Erdal
Unat, Didem
Matar, Hassan Salehe
Author_xml – sequence: 1
  givenname: Hassan Salehe
  surname: Matar
  fullname: Matar, Hassan Salehe
  email: hmatar@ku.edu.tr
– sequence: 2
  givenname: Erdal
  surname: Mutlu
  fullname: Mutlu, Erdal
  email: ermutlu@ku.edu.tr
– sequence: 3
  givenname: Serdar
  surname: Tasiran
  fullname: Tasiran, Serdar
  email: stasiran@ku.edu.tr
– sequence: 4
  givenname: Didem
  surname: Unat
  fullname: Unat, Didem
  email: dunat@ku.edu.tr
BookMark eNp9kM1qwzAQhEVJoUnaJ-hFL2BXsmTLPvRQQv8gkEt7KwhZWicKkWUkpyFvX7npuacddmcG9lugWe97QOiekpwSWj3s80EF7fOCUJFTmhNSX6E5rUWRCcaqGZonl8hq2tAbtIhxTwipeE3m6GtzHIfjiFOhgRGCs72NDk9aj9b3uPMBD8Fvg3LptsXOGzhErL1rkzUtjBpVd_AnfLLjDsedCmCwA-fD-RZdd-oQ4e5vLtHny_PH6i1bb17fV0_rTBclGzNVaqhA1Jwb3pVN0bZGsaSbjhFWlKZhhvKSl5VotKhE2Taihg54RcCYAlq2ROzSq4OPMUAnh2CdCmdJiZwAyb38BSQnQJJSmQCl1OMllf6BbwtBRm2h12BsSM9L4-2_-R_NmHRk
Cites_doi 10.1007/s002240000120
10.1145/209937.209958
10.1002/stvr.1564
10.1007/978-3-642-15277-1_2
10.1145/2400682.2400712
10.1007/978-3-642-00590-9_28
10.1145/359545.359563
ContentType Journal Article
Copyright 2017 Elsevier B.V.
Copyright_xml – notice: 2017 Elsevier B.V.
DBID AAYXX
CITATION
DOI 10.1016/j.parco.2017.11.008
DatabaseName CrossRef
DatabaseTitle CrossRef
DatabaseTitleList
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1872-7336
EndPage 57
ExternalDocumentID 10_1016_j_parco_2017_11_008
S016781911730193X
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
ID FETCH-LOGICAL-c253t-a5ce6e7844d4f592bbda34d49f30325d93d14545679c7675b978efe460edd2eb3
ISICitedReferencesCount 2
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000423005600003&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 Sat Nov 29 04:06:56 EST 2025
Fri Feb 23 02:29:26 EST 2024
IsPeerReviewed true
IsScholarly true
Keywords Nondeterminism detection
Data races
LLVM
Happens-before
Shared memory
Dataflow models
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c253t-a5ce6e7844d4f592bbda34d49f30325d93d14545679c7675b978efe460edd2eb3
PageCount 16
ParticipantIDs crossref_primary_10_1016_j_parco_2017_11_008
elsevier_sciencedirect_doi_10_1016_j_parco_2017_11_008
PublicationCentury 2000
PublicationDate January 2018
2018-01-00
PublicationDateYYYYMMDD 2018-01-01
PublicationDate_xml – month: 01
  year: 2018
  text: January 2018
PublicationDecade 2010
PublicationTitle Parallel computing
PublicationYear 2018
Publisher Elsevier B.V
Publisher_xml – name: Elsevier B.V
References Gajinov, Stipić, Erić, Unsal, Ayguadé, Cristal (bib0010) 2014
Hunt, Bergan, Ceze, Gribble (bib0024) 2013
std::unordered_map.
Vechev, Yahav, Raman, Sarkar (bib0004) 2010
Savage, Burrows, Nelson, Sobalvarro, Anderson (bib0029) 1997
Lee, Schardl (bib0019) 2015
Miserez, Bielik, El-Hassany, Vanbever, Vechev (bib0012) 2015
Flanagan, Freund (bib0027) 2009
Bruening, Garnett, Amarasinghe (bib0018) 2003
Olszewski, Zhao, Koh, Ansel, Amarasinghe (bib0021) 2012
Devietti, Lucia, Ceze, Oskin (bib0001) 2009
Fernández, Beltran, Martorell, Badia, Ayguadé, Labarta (bib0007) 2014; 8806
Labarta (bib0022) 2010
Flanagan, Freund (bib0028) 2010
Slember, Narasimhan (bib0002) 2006
Blumofe, Joerg, Kuszmaul, Leiserson, Randall, Zhou (bib0023) 1995; 30
Serebryany, Iskhodzhanov (bib0020) 2009
.
Gajinov, Stipic, Unsal, Harris, Ayguade, Cristal (bib0006) 2012
Lamport (bib0009) 1978; 21
Raman, Zhao, Sarkar, Vechev, Yahav (bib0003) 2010
Intel, Intel threading building blocks. URL
Luk, Cohn, Muth, Patil, Klauser, Lowney, Wallace, Reddi, Hazelwood (bib0017) 2005
C. Sadowski, S.N. Freund, C. Flanagan, Programming Languages and Systems: 18th European Symposium on Programming, ESOP 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22–29, 2009. Proceedings, Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 394–409. doi
Pop, Cohen (bib0005) 2013; 9
Feng, Leiserson (bib0013) 1999; 32
Hong, Kim (bib0025) 2015; 25
Lattner, Adve (bib0015) 2004
P.M. Carpenter, A. Ramirez, E. Ayguade, Euro-Par 2010 - Parallel Processing: 16th International Euro-Par Conference, Ischia, Italy, August 31, - September 3, 2010, Proceedings, Part I, Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 2–13. 10.1007/978-3-642-15277-1_2.
Asanovic, Bodik, Catanzaro, Gebis, Husbands, Keutzer, Patterson, Plishker, Shalf, Williams, Yelick (bib0016) 2006
Labarta (10.1016/j.parco.2017.11.008_bib0022) 2010
Lamport (10.1016/j.parco.2017.11.008_bib0009) 1978; 21
Miserez (10.1016/j.parco.2017.11.008_bib0012) 2015
Lattner (10.1016/j.parco.2017.11.008_bib0015) 2004
Asanovic (10.1016/j.parco.2017.11.008_sbref0013) 2006
10.1016/j.parco.2017.11.008_bib0008
10.1016/j.parco.2017.11.008_bib0026
Fernández (10.1016/j.parco.2017.11.008_bib0007) 2014; 8806
Pop (10.1016/j.parco.2017.11.008_bib0005) 2013; 9
Devietti (10.1016/j.parco.2017.11.008_bib0001) 2009
Luk (10.1016/j.parco.2017.11.008_bib0017) 2005
Bruening (10.1016/j.parco.2017.11.008_sbref0015) 2003
Gajinov (10.1016/j.parco.2017.11.008_bib0006) 2012
Lee (10.1016/j.parco.2017.11.008_bib0019) 2015
Vechev (10.1016/j.parco.2017.11.008_sbref0004) 2010
Savage (10.1016/j.parco.2017.11.008_bib0029) 1997
Raman (10.1016/j.parco.2017.11.008_sbref0003) 2010
Slember (10.1016/j.parco.2017.11.008_sbref0002) 2006
Hunt (10.1016/j.parco.2017.11.008_bib0024) 2013
Hong (10.1016/j.parco.2017.11.008_bib0025) 2015; 25
Olszewski (10.1016/j.parco.2017.11.008_bib0021) 2012
10.1016/j.parco.2017.11.008_bib0014
10.1016/j.parco.2017.11.008_bib0011
Blumofe (10.1016/j.parco.2017.11.008_bib0023) 1995; 30
Feng (10.1016/j.parco.2017.11.008_bib0013) 1999; 32
Flanagan (10.1016/j.parco.2017.11.008_bib0028) 2010
Gajinov (10.1016/j.parco.2017.11.008_bib0010) 2014
Flanagan (10.1016/j.parco.2017.11.008_bib0027) 2009
Serebryany (10.1016/j.parco.2017.11.008_bib0020) 2009
References_xml – start-page: 81
  year: 2006
  end-page: 100
  ident: bib0002
  article-title: Living with nondeterminism in replicated middleware applications
  publication-title: Proceedings of the ACM/IFIP/USENIX 2006 International Conference on Middleware
– reference: std::unordered_map.
– start-page: 243
  year: 2012
  end-page: 251
  ident: bib0006
  article-title: Integrating dataflow abstractions into the shared memory model
  publication-title: Computer Architecture and High Performance Computing (SBAC-PAD), 2012 IEEE 24th International Symposium on
– year: 2004
  ident: bib0015
  article-title: LLVM: a compilation framework for lifelong program analysis & transformation
  publication-title: Proceedings of the 2004 International Symposium on Code Generation and Optimization (CGO’04), Palo Alto, California
– start-page: 455
  year: 2010
  end-page: 471
  ident: bib0004
  article-title: Automatic verification of determinism for structured parallel programs
  publication-title: Proceedings of the 17th International Conference on Static Analysis
– start-page: 190
  year: 2005
  end-page: 200
  ident: bib0017
  article-title: Pin: building customized program analysis tools with dynamic instrumentation
  publication-title: Proceedings of the 2005 ACM SIGPLAN Conference on Programming Language Design and Implementation
– year: 2010
  ident: bib0022
  article-title: Starss: a programming model for the multicore era
  publication-title: PRACE Workshop “New Languages & Future Technology Prototypes” at the Leibniz Supercomputing Centre in Garching (Germany)
– year: 2006
  ident: bib0016
  article-title: The Landscape of Parallel Computing Research: A View from Berkeley
  publication-title: Technical Report
– start-page: 85
  year: 2009
  end-page: 96
  ident: bib0001
  article-title: Dmp: deterministic shared memory multiprocessing
  publication-title: Proceedings of the 14th International Conference on Architectural Support for Programming Languages and Operating Systems
– volume: 30
  start-page: 207
  year: 1995
  end-page: 216
  ident: bib0023
  article-title: Cilk: an efficient multithreaded runtime system
  publication-title: SIGPLAN Not.
– volume: 9
  start-page: 53:1
  year: 2013
  end-page: 53:25
  ident: bib0005
  article-title: Openstream: expressiveness and data-flow compilation of openmp streaming programs
  publication-title: ACM Trans. Archit. Code Optim.
– volume: 32
  start-page: 301
  year: 1999
  end-page: 326
  ident: bib0013
  article-title: Efficient detection of determinacy races in cilk programs
  publication-title: Theory Comput. Syst.
– volume: 25
  start-page: 191
  year: 2015
  end-page: 217
  ident: bib0025
  article-title: A survey of race bug detection techniques for multithreaded programmes
  publication-title: Softw. Testing, Verif. Reliab.
– volume: 21
  start-page: 558
  year: 1978
  end-page: 565
  ident: bib0009
  article-title: Time, clocks, and the ordering of events in a distributed system
  publication-title: Commun. ACM
– reference: Intel, Intel threading building blocks. URL
– start-page: 173
  year: 2012
  end-page: 184
  ident: bib0021
  article-title: Aikido: accelerating shared data dynamic analyses
  publication-title: Proceedings of the Seventeenth International Conference on Architectural Support for Programming Languages and Operating Systems
– start-page: 368
  year: 2010
  end-page: 383
  ident: bib0003
  article-title: Efficient data race detection for async-finish parallelism
  publication-title: Proceedings of the First International Conference on Runtime Verification
– start-page: 1
  year: 2010
  end-page: 8
  ident: bib0028
  article-title: The roadrunner dynamic analysis framework for concurrent programs
  publication-title: Proceedings of the 9th ACM SIGPLAN-SIGSOFT Workshop on Program Analysis for Software Tools and Engineering
– start-page: 4:1
  year: 2014
  end-page: 4:11
  ident: bib0010
  article-title: Dash: a benchmark suite for hybrid dataflow and shared memory programming models: with comparative evaluation of three hybrid dataflow models
  publication-title: Proceedings of the 11th ACM Conference on Computing Frontiers
– reference: C. Sadowski, S.N. Freund, C. Flanagan, Programming Languages and Systems: 18th European Symposium on Programming, ESOP 2009, Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009, York, UK, March 22–29, 2009. Proceedings, Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 394–409. doi:
– volume: 8806
  start-page: 601
  year: 2014
  end-page: 612
  ident: bib0007
  article-title: Task-based programming with ompss and its application
  publication-title: Euro-Par 2014: Parallel Processing Workshops
– reference: .
– reference: P.M. Carpenter, A. Ramirez, E. Ayguade, Euro-Par 2010 - Parallel Processing: 16th International Euro-Par Conference, Ischia, Italy, August 31, - September 3, 2010, Proceedings, Part I, Springer Berlin Heidelberg, Berlin, Heidelberg, pp. 2–13. 10.1007/978-3-642-15277-1_2.
– start-page: 27
  year: 1997
  end-page: 37
  ident: bib0029
  article-title: Eraser: a dynamic data race detector for multi-threaded programs
  publication-title: Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles
– start-page: 62
  year: 2009
  end-page: 71
  ident: bib0020
  article-title: Threadsanitizer: data race detection in practice
  publication-title: Proceedings of the Workshop on Binary Instrumentation and Applications
– start-page: 499
  year: 2013
  end-page: 508
  ident: bib0024
  article-title: Ddos: taming nondeterminism in distributed systems
  publication-title: Proceedings of the Eighteenth International Conference on Architectural Support for Programming Languages and Operating Systems
– start-page: 111
  year: 2015
  end-page: 122
  ident: bib0019
  article-title: Efficiently detecting races in cilk programs that use reducer hyperobjects
  publication-title: Proceedings of the 27th ACM Symposium on Parallelism in Algorithms and Architectures
– start-page: 265
  year: 2003
  end-page: 275
  ident: bib0018
  article-title: An infrastructure for adaptive dynamic optimization
  publication-title: Proceedings of the International Symposium on Code Generation and Optimization: Feedback-directed and Runtime Optimization
– start-page: 121
  year: 2009
  end-page: 133
  ident: bib0027
  article-title: Fasttrack: efficient and precise dynamic race detection
  publication-title: Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation
– start-page: 22:1
  year: 2015
  end-page: 22:7
  ident: bib0012
  article-title: Sdnracer: detecting concurrency violations in software-defined networks
  publication-title: Proceedings of the 1st ACM SIGCOMM Symposium on Software Defined Networking Research
– start-page: 499
  year: 2013
  ident: 10.1016/j.parco.2017.11.008_bib0024
  article-title: Ddos: taming nondeterminism in distributed systems
– start-page: 27
  year: 1997
  ident: 10.1016/j.parco.2017.11.008_bib0029
  article-title: Eraser: a dynamic data race detector for multi-threaded programs
– start-page: 173
  year: 2012
  ident: 10.1016/j.parco.2017.11.008_bib0021
  article-title: Aikido: accelerating shared data dynamic analyses
– volume: 32
  start-page: 301
  issue: 3
  year: 1999
  ident: 10.1016/j.parco.2017.11.008_bib0013
  article-title: Efficient detection of determinacy races in cilk programs
  publication-title: Theory Comput. Syst.
  doi: 10.1007/s002240000120
– start-page: 85
  year: 2009
  ident: 10.1016/j.parco.2017.11.008_bib0001
  article-title: Dmp: deterministic shared memory multiprocessing
– start-page: 81
  year: 2006
  ident: 10.1016/j.parco.2017.11.008_sbref0002
  article-title: Living with nondeterminism in replicated middleware applications
– ident: 10.1016/j.parco.2017.11.008_bib0011
– start-page: 111
  year: 2015
  ident: 10.1016/j.parco.2017.11.008_bib0019
  article-title: Efficiently detecting races in cilk programs that use reducer hyperobjects
– start-page: 62
  year: 2009
  ident: 10.1016/j.parco.2017.11.008_bib0020
  article-title: Threadsanitizer: data race detection in practice
– volume: 30
  start-page: 207
  issue: 8
  year: 1995
  ident: 10.1016/j.parco.2017.11.008_bib0023
  article-title: Cilk: an efficient multithreaded runtime system
  publication-title: SIGPLAN Not.
  doi: 10.1145/209937.209958
– volume: 25
  start-page: 191
  issue: 3
  year: 2015
  ident: 10.1016/j.parco.2017.11.008_bib0025
  article-title: A survey of race bug detection techniques for multithreaded programmes
  publication-title: Softw. Testing, Verif. Reliab.
  doi: 10.1002/stvr.1564
– start-page: 1
  year: 2010
  ident: 10.1016/j.parco.2017.11.008_bib0028
  article-title: The roadrunner dynamic analysis framework for concurrent programs
– start-page: 265
  year: 2003
  ident: 10.1016/j.parco.2017.11.008_sbref0015
  article-title: An infrastructure for adaptive dynamic optimization
– start-page: 121
  year: 2009
  ident: 10.1016/j.parco.2017.11.008_bib0027
  article-title: Fasttrack: efficient and precise dynamic race detection
– start-page: 243
  year: 2012
  ident: 10.1016/j.parco.2017.11.008_bib0006
  article-title: Integrating dataflow abstractions into the shared memory model
– start-page: 368
  year: 2010
  ident: 10.1016/j.parco.2017.11.008_sbref0003
  article-title: Efficient data race detection for async-finish parallelism
– year: 2006
  ident: 10.1016/j.parco.2017.11.008_sbref0013
  article-title: The Landscape of Parallel Computing Research: A View from Berkeley
– start-page: 455
  year: 2010
  ident: 10.1016/j.parco.2017.11.008_sbref0004
  article-title: Automatic verification of determinism for structured parallel programs
– year: 2010
  ident: 10.1016/j.parco.2017.11.008_bib0022
  article-title: Starss: a programming model for the multicore era
– ident: 10.1016/j.parco.2017.11.008_bib0008
  doi: 10.1007/978-3-642-15277-1_2
– volume: 9
  start-page: 53:1
  issue: 4
  year: 2013
  ident: 10.1016/j.parco.2017.11.008_bib0005
  article-title: Openstream: expressiveness and data-flow compilation of openmp streaming programs
  publication-title: ACM Trans. Archit. Code Optim.
  doi: 10.1145/2400682.2400712
– volume: 8806
  start-page: 601
  year: 2014
  ident: 10.1016/j.parco.2017.11.008_bib0007
  article-title: Task-based programming with ompss and its application
– ident: 10.1016/j.parco.2017.11.008_bib0026
  doi: 10.1007/978-3-642-00590-9_28
– volume: 21
  start-page: 558
  issue: 7
  year: 1978
  ident: 10.1016/j.parco.2017.11.008_bib0009
  article-title: Time, clocks, and the ordering of events in a distributed system
  publication-title: Commun. ACM
  doi: 10.1145/359545.359563
– year: 2004
  ident: 10.1016/j.parco.2017.11.008_bib0015
  article-title: LLVM: a compilation framework for lifelong program analysis & transformation
– start-page: 4:1
  year: 2014
  ident: 10.1016/j.parco.2017.11.008_bib0010
  article-title: Dash: a benchmark suite for hybrid dataflow and shared memory programming models: with comparative evaluation of three hybrid dataflow models
– start-page: 190
  year: 2005
  ident: 10.1016/j.parco.2017.11.008_bib0017
  article-title: Pin: building customized program analysis tools with dynamic instrumentation
– ident: 10.1016/j.parco.2017.11.008_bib0014
– start-page: 22:1
  year: 2015
  ident: 10.1016/j.parco.2017.11.008_bib0012
  article-title: Sdnracer: detecting concurrency violations in software-defined networks
SSID ssj0006480
Score 2.1610098
Snippet •We identify output nondeterminism errors in dataflow applications on shared memory.•A technique for detecting output nondeterminism based on happens-before...
SourceID crossref
elsevier
SourceType Index Database
Publisher
StartPage 42
SubjectTerms Data races
Dataflow models
Happens-before
LLVM
Nondeterminism detection
Shared memory
Title Output nondeterminism detection for programming models combining dataflow with shared memory
URI https://dx.doi.org/10.1016/j.parco.2017.11.008
Volume 71
WOSCitedRecordID wos000423005600003&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/eLvHCXMwtV1Lb9NAEF6FlAMX3qjlpT1wK678WHt3jxUUFYRKJVopByTL-7DaKg1RYpf-Bn41M_twUoIQIHGxVo7srGY-zcyOv5kh5FXKuDHapkmmTJ4wpZtEqapKLChEpYXJuXSFwh_50ZGYTOTxaPQ91sJcTflsJq6v5fy_qhrugbKxdPYv1D28FG7AGpQOV1A7XP9I8Z_6bt53u3CsN4HqgnMwcK0HXmFgZV1insDNwlkit1y5YRG7SBptp1-_Bfr6maOoXyIj98Yn4ONmgXNYpo6V3nfRBbrsdudp24cQmaP9ACd0tuLY9t209ybYNCt-R7M8X4RkrIUfBs7w6axxfuItTrJdz1Fk4qccxWbxjM9lgo3G86J3Rd7-Cg4Bf-F7okQD7We0BAvre3EFX-17W294AZ-QuNibA4CwwDPje9ipNRUrpzdQET_jNnAXGdo6WUxuka2cl1KMydb--4PJh8GvV8zN4Ru2HXtYObbgxl_9Os5Zi11O7pO74dBB9z1YHpCRnT0k9-JADxrs-yPyxWOH3sQOHbBDATt0DTvUY4cO2KEROxSxQz12qMfOY3L67uDkzWESxm8kOi-LLmlKbSvLBWOGtaXMlTJNAWvZQtiTl0YWJmMYgHOpsSWQklzY1rIqtcbkVhVPyBj2a7cJ1ehX4T1oAcAeCGnKNGtzzSxTqm31DnkdhVXPfZeVOtIPL2on2xplC-fVGmS7Q6oo0DoEij4ArAEBv3vw6b8--IzcWeH6ORl3i96-ILf1VXe-XLwMSPkBXomT4g
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=Output+nondeterminism+detection+for+programming+models+combining+dataflow+with+shared+memory&rft.jtitle=Parallel+computing&rft.au=Matar%2C+Hassan+Salehe&rft.au=Mutlu%2C+Erdal&rft.au=Tasiran%2C+Serdar&rft.au=Unat%2C+Didem&rft.date=2018-01-01&rft.pub=Elsevier+B.V&rft.issn=0167-8191&rft.eissn=1872-7336&rft.volume=71&rft.spage=42&rft.epage=57&rft_id=info:doi/10.1016%2Fj.parco.2017.11.008&rft.externalDocID=S016781911730193X
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