Formal Analysis of GPU Programs with Atomics via Conflict-Directed Delay-Bounding

Wei-Fan Chiang, Ganesh Gopalakrishnan, Guodong Li, Zvonimir Rakamaric. 5th NASA Formal Methods Symposium (NFM 2013), NASA Ames Research Center, Moffett Field, CA, USA.
[pdf] [bib]

Abstract: GPU based computing has made significant strides in recent years. Unfortunately, GPU program optimizations can introduce subtle concurrency errors, and so incisive formal bug-hunting methods are essential. This paper presents a new formal bug-hunting method for GPU programs that combine barriers and atomics. We present an algorithm called Conflict-directed Delay-bounded scheduling algorithm (CD) that exploits the occurrence of conflicts among atomic synchronization commands to trigger the generation of alternate schedules; these alternate schedules are executed in a delay-bounded manner. We formally describe CD, and present two correctness checking methods, one based on final state comparison, and the other on user assertions. We evaluate our implementation on realistic GPU benchmarks, with encouraging results.

Bibtex:

@inproceedings{nfm2013-cglr,
  author = {Wei-Fan Chiang and Ganesh Gopalakrishnan and Guodong Li
    and Zvonimir Rakamari\'c},
  title = {Formal Analysis of {GPU} Programs with Atomics via
    Conflict-Directed Delay-Bounding},
  booktitle = {Proceedings of the 5th NASA Formal Methods
    Symposium (NFM 2013)},
  series = {Lecture Notes in Computer Science},
  volume = {7871},
  publisher = {Springer},
  editor = {Guillaume Brat and Neha Rungta and Arnaud Venet},
  year = {2013},
  pages = {213--228},
}