Formal Semantics of Heterogeneous CUDA-C: A Modular Approach with Applications

Chris Hathhorn, Michela Becchi, William L. Harrison, Adam Procter
University of Missouri, Columbia, Missouri, USA
Proceedings SSV 2012, arXiv:1211.5873 (27 Nov 2012)


   author={Hathhorn}, C. and {Becchi}, M. and {Harrison}, W.~L. and {Procter}, A.},

   title={"{Formal Semantics of Heterogeneous CUDA-C: A Modular Approach with Applications}"},

   journal={ArXiv e-prints},




   keywords={Computer Science – Programming Languages},




   adsnote={Provided by the SAO/NASA Astrophysics Data System}


Download Download (PDF)   View View   Source Source   Source codes Source codes




We extend an off-the-shelf, executable formal semantics of C (Ellison and Rosu’s K Framework semantics) with the core features of CUDA-C. The hybrid CPU/GPU computation model of CUDA-C presents challenges not just for programmers, but also for practitioners of formal methods. Our formal semantics helps expose and clarify these issues. We demonstrate the usefulness of our semantics by generating a tool from it capable of detecting some race conditions and deadlocks in CUDA-C programs. We discuss limitations of our model and argue that its extensibility can easily enable a wider range of verification tasks.
No votes yet.
Please wait...

* * *

* * *

HGPU group © 2010-2021 hgpu.org

All rights belong to the respective authors

Contact us: