Warps and atomics: beyond barrier synchronization in the verification of GPU kernels
File(s)paper.pdf (231.33 KB)
Accepted version
Author(s)
Bardsley, E
Donaldson, AF
Type
Conference Paper
Abstract
We describe the design and implementation of methods to support reasoning about data races in GPU kernels where constructs other than the standard barrier primitive are used for synchronization. At one extreme we consider kernels that exploit implicit, coarse-grained synchronization between threads in the same warp, a feature provided by many architectures. At the other extreme we consider kernels that reduce or avoid barrier synchronization through the use of atomic operations. We discuss design decisions associated with providing support for warps and atomics in GPUVerify, a formal verification tool for OpenCL and CUDA kernels. We evaluate the practical impact of these design decisions using a large set of benchmarks, showing that warps can be supported in a scalable manner, that a coarse abstraction suffices for efficient reasoning about most practical uses of atomic operations, and that a novel, refined abstraction captures an important design pattern where atomic operations are used to compute unique array indices. Our evaluation revealed two previously unknown bugs in publicly available benchmark suites.
Editor(s)
Badger, JM
Rozier, KY
Date Issued
2014-05-01
Date Acceptance
2014-04-29
Citation
NASA Formal Methods, 2014, 8430, pp.230-245
ISBN
978-3-319-06199-3
Publisher
Springer
Start Page
230
End Page
245
Journal / Book Title
NASA Formal Methods
Volume
8430
Copyright Statement
© Springer International Publishing Switzerland 2014. The final publication is available at Springer via http://dx.doi.org/10.1007/978-3-319-06200-6_18
Sponsor
Engineering & Physical Science Research Council (EPSRC)
Grant Number
EP/K011499/1
Source
6th International Symposium, NFM 2014
Subjects
Science & Technology
Technology
Computer Science, Software Engineering
Computer Science, Theory & Methods
Computer Science
Artificial Intelligence & Image Processing
08 Information And Computing Sciences
Notes
ee: http://dx.doi.org/10.1007/978-3-319-06200-6_18
Start Date
2014-04-29
Finish Date
2014-05-01
Coverage Spatial
Houston, TX