Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

GMRace: Detecting Data Races in GPU Programs via a Low-Overhead Scheme

Published: 01 January 2014 Publication History
  • Get Citation Alerts
  • Abstract

    In recent years, GPUs have emerged as an extremely cost-effective means for achieving high performance. While languages like CUDA and OpenCL have eased GPU programming for nongraphical applications, they are still explicitly parallel languages. All parallel programmers, particularly the novices, need tools that can help ensuring the correctness of their programs. Like any multithreaded environment, data races on GPUs can severely affect the program reliability. In this paper, we propose GMRace, a new mechanism for detecting races in GPU programs. GMRace combines static analysis with a carefully designed dynamic checker for logging and analyzing information at runtime. Our design utilizes GPUs memory hierarchy to log runtime data accesses efficiently. To improve the performance, GMRace leverages static analysis to reduce the number of statements that need to be instrumented. Additionally, by exploiting the knowledge of thread scheduling and the execution model in the underlying GPUs, GMRace can accurately detect data races with no false positives reported. Our experimental results show that comparing to previous approaches, GMRace is more effective in detecting races in the evaluated cases, and incurs much less runtime and space overhead.

    Cited By

    View all

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image IEEE Transactions on Parallel and Distributed Systems
    IEEE Transactions on Parallel and Distributed Systems  Volume 25, Issue 1
    January 2014
    278 pages

    Publisher

    IEEE Press

    Publication History

    Published: 01 January 2014

    Author Tags

    1. CUDA
    2. GPU
    3. concurrency
    4. data race
    5. multithreading

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)0
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 27 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2021)iGUARDProceedings of the ACM SIGOPS 28th Symposium on Operating Systems Principles10.1145/3477132.3483545(49-65)Online publication date: 26-Oct-2021
    • (2021)DSGENProceedings of the 35th ACM International Conference on Supercomputing10.1145/3447818.3460962(75-87)Online publication date: 3-Jun-2021
    • (2021)Checking Data-Race Freedom of GPU Kernels, CompositionallyComputer Aided Verification10.1007/978-3-030-81685-8_19(403-426)Online publication date: 20-Jul-2021
    • (2020)LLOVACM Transactions on Architecture and Code Optimization10.1145/341859717:4(1-26)Online publication date: 22-Dec-2020
    • (2020)SimuleeProceedings of the ACM/IEEE 42nd International Conference on Software Engineering10.1145/3377811.3380358(937-948)Online publication date: 27-Jun-2020
    • (2020)Automated test generation for OpenCL kernels using fuzzing and constraint solvingProceedings of the 13th Annual Workshop on General Purpose Processing using Graphics Processing Unit10.1145/3366428.3380768(61-70)Online publication date: 23-Feb-2020
    • (2020)ScoRDProceedings of the ACM/IEEE 47th Annual International Symposium on Computer Architecture10.1109/ISCA45697.2020.00088(1036-1049)Online publication date: 30-May-2020
    • (2018)CURD: a dynamic CUDA race detectorACM SIGPLAN Notices10.1145/3296979.319236853:4(390-403)Online publication date: 11-Jun-2018
    • (2018)A Formal Instruction-level GPU Model for Scalable Verification2018 IEEE/ACM International Conference on Computer-Aided Design (ICCAD)10.1145/3240765.3240771(1-8)Online publication date: 5-Nov-2018
    • (2018)CURD: a dynamic CUDA race detectorProceedings of the 39th ACM SIGPLAN Conference on Programming Language Design and Implementation10.1145/3192366.3192368(390-403)Online publication date: 11-Jun-2018
    • Show More Cited By

    View Options

    View options

    Get Access

    Login options

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media