English
Related papers

Related papers: Towards an Accurate GPU Data Race Detector

200 papers

Data races are egregious parallel programming bugs on CPUs. They are even worse on GPUs due to the hierarchical thread and memory structure, which makes it possible to write code that is correctly synchronized within a thread group while…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-01-10 John Jacobson , Martin Burtscher , Ganesh Gopalakrishnan

We extend the theory behind the Faial tool-chain, which can soundly prove that CUDA programs (aka, kernels) are data-race free using specialized behavioral types called memory access protocols (MAPs). In this paper we extend the theory of…

Programming Languages · Computer Science 2022-03-25 Dennis Liew , Tiago Cogumbreiro , Julien Lange

The high degree of parallelism and relatively complicated synchronization mechanisms in GPUs make writing correct kernels difficult. Data races pose one such concurrency correctness challenge, and therefore, effective methods of detecting…

Programming Languages · Computer Science 2021-11-25 Sagnik Dey , Mayant Mukul , Parth Sharma , Swarnendu Biswas

Dynamic race detection is a highly effective runtime verification technique for identifying data races by instrumenting and monitoring concurrent program runs. However, standard dynamic race detection is incompatible with practical weak…

Programming Languages · Computer Science 2025-04-25 Roy Margalit , Michalis Kokologiannakis , Shachar Itzhaky , Ori Lahav

Data races are among the most common bugs in concurrency. The standard approach to data-race detection is via dynamic analyses, which work over executions of concurrent programs, instead of the program source code. The rich literature on…

Programming Languages · Computer Science 2021-07-09 Rucha Kulkarni , Umang Mathur , Andreas Pavlogiannis

The consequences of data races can be potentially very problematic [1], and it is important to determine what tools and methods are best at detecting them. The following conditions must be met for a data race to occur: two or more threads…

Databases · Computer Science 2022-06-22 Danial Entezari

Data race, a category of insidious software concurrency bugs, is often challenging and resource-intensive to detect and debug. Existing dynamic race detection tools incur significant execution time and memory overhead while exhibiting high…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-01 Jaidev Shastri , Xiaoguang Wang , Basavesh Ammanaghatta Shivakumar , Freek Verbeek , Binoy Ravindran

Data races are critical issues in multithreaded program, leading to unpredictable, catastrophic and difficult-to-diagnose problems. Despite the extensive in-house testing, data races often escape to deployed software and manifest in…

Software Engineering · Computer Science 2024-12-20 Xudong Sun , Zhuo Chen , Jingyang Shi , Yiyu Zhang , Peng Di , Jianhua Zhao , Xuandong Li , Zhiqiang Zuo

Detection of data races is one of the most important tasks for verifying the correctness of OpenMP parallel codes. Two main models of analysis tools have been proposed for detecting data races: dynamic analysis and static analysis. Dynamic…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-19 Junhyung Shim , Quazi Ishtiaque Mahmud , Ali Jannesari

Go is a popular concurrent programming language thanks to its ability to efficiently combine concurrency and systems programming. In Go programs, a number of concurrency bugs can be caused by a mixture of data races and communication…

Programming Languages · Computer Science 2021-11-22 Julia Gabet , Nobuko Yoshida

Dynamic data race detectors are indispensable for flagging concurrency errors in software, but their high runtime overhead limits their adoption. This overhead stems primarily from pervasive instrumentation of memory accesses - a…

Programming Languages · Computer Science 2025-12-08 Alexey Paznikov , Andrey Kogutenko , Yaroslav Osipov , Michael Schwarz , Umang Mathur

Happens before-based dynamic analysis is the go-to technique for detecting data races in large scale software projects due to the absence of false positive reports. However, such analyses are expensive since they employ expensive vector…

Programming Languages · Computer Science 2025-06-26 Mosaad Al Thokair , Minjian Zhang , Umang Mathur , Mahesh Viswanathan

We present a static analysis technique for detecting data races in Real-Time Operating System (RTOS) applications. These applications are often employed in safety-critical tasks and the presence of races may lead to erroneous behaviour with…

Programming Languages · Computer Science 2020-10-07 Rishi Tulsyan , Rekha Pai , Deepak D'Souza

It is often difficult to write code that you can ensure will be executed in the right order when programing for parallel compute tasks. Due to the way that today's parallel compute hardware, primarily Graphical Processing Units (GPUs),…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-03-13 Andrew Osterhout , Ganesh Gopalakrishnan

RacerD is a static race detector that has been proven to be effective in engineering practice: it has seen thousands of data races fixed by developers before reaching production, and has supported the migration of Facebook's Android app…

Programming Languages · Computer Science 2018-11-09 Nikos Gorogiannis , Peter W. O'Hearn , Ilya Sergey

With the proliferation of multi-core hardware, parallel programs have become ubiquitous. These programs have their own type of bugs known as concurrency bugs and among them, data race bugs have been mostly in the focus of researchers over…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-07-17 Ali Tehrani , Mohammed Khaleel , Reza Akbari , Ali Jannesari

Interrupt-driven programs are widely deployed in safety-critical embedded systems to perform hardware and resource dependent data operation tasks. The frequent use of interrupts in these systems can cause race conditions to occur due to…

Software Engineering · Computer Science 2023-05-30 Yu Wang , Fengjuan Gao , Linzhang Wang , Tingting Yu , Ke Wang , Jianhua Zhao , Xuandong Li

RacerF is a static analyser for detection of data races in multithreaded C programs implemented as a plugin of the Frama-C platform. The approach behind RacerF is mostly heuristic and relies on analysis of the sequential behaviour of…

Software Engineering · Computer Science 2025-02-28 Tomáš Dacík , Tomáš Vojnar

Data races, a major source of bugs in concurrent programs, can result in loss of manpower and time as well as data loss due to system failures. OpenMP, the de facto shared memory parallelism framework used in the HPC community, also suffers…

Programming Languages · Computer Science 2021-11-09 Utpal Bora , Shraiysh Vaishay , Saurabh Joshi , Ramakrishna Upadrasta

Stochastic simulations are often sensitive to the source of randomness that character-izes the statistical quality of their results. Consequently, we need highly reliable Random Number Generators (RNGs) to feed such applications. Recent…

Distributed, Parallel, and Cluster Computing · Computer Science 2014-12-30 Jonathan Passerat-Palmbach , David Hill
‹ Prev 1 2 3 10 Next ›