期刊名称:Electronic Proceedings in Theoretical Computer Science
电子版ISSN:2075-2180
出版年度:2012
卷号:102
页码:115-124
DOI:10.4204/EPTCS.102.11
出版社:Open Publishing Association
摘要: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.