Formal Analysis of GPU Programs with Atomics via Conflict-Directed Delay-Bounding
School of Computing, University of Utah, USA
5th NASA Formal Methods Symposium (NFM 2013), 2013
@article{chiang2013formal,
title={Formal Analysis of GPU Programs with Atomics via Conflict-Directed Delay-Bounding?},
author={Chiang, Wei-Fan and Gopalakrishnan, Ganesh and Li, Guodong and Rakamaric, Zvonimir},
year={2013}
}
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.
March 31, 2013 by hgpu