2015
DOI: 10.1007/978-3-319-22969-0_5
|View full text |Cite
|
Sign up to set email alerts
|

Specification and Verification of Atomic Operations in GPGPU Programs

Abstract: Abstract. We propose a specification and verification technique based on separation logic to reason about data race freedom and functional correctness of GPU kernels that use atomic operations as synchronisation mechanism. Our approach exploits the notion of resource invariant from Concurrent Separation Logic (CSL) to capture the behaviour of atomic operations. However, because of the different memory levels in the GPU architecture, we adapt this notion of resource invariant to these memory levels, i.e., group… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
10
0
1

Year Published

2017
2017
2024
2024

Publication Types

Select...
4
2
1

Relationship

3
4

Authors

Journals

citations
Cited by 11 publications
(11 citation statements)
references
References 15 publications
0
10
0
1
Order By: Relevance
“…VerCors takes programs as input that are annotated with logical specifications, and can automatically verify whether the code implementation adheres to these specifications. The specifications are formulated in a Concurrent Separation Logic (CSL) that supports permission accounting, and are annotated as pre/postconditions for functions and threads, and invariants for loops and locks [2,7]. However, to keep the paper accessible, this paper describes the formalization independent of specific knowledge of CSL, and explains any further necessary details whenever needed.…”
Section: The Vercors Verifiermentioning
confidence: 99%
“…VerCors takes programs as input that are annotated with logical specifications, and can automatically verify whether the code implementation adheres to these specifications. The specifications are formulated in a Concurrent Separation Logic (CSL) that supports permission accounting, and are annotated as pre/postconditions for functions and threads, and invariants for loops and locks [2,7]. However, to keep the paper accessible, this paper describes the formalization independent of specific knowledge of CSL, and explains any further necessary details whenever needed.…”
Section: The Vercors Verifiermentioning
confidence: 99%
“…83 The content of this chapter is based on the following publications of the author: "Specification and verification of atomic operations in GPGPU programs" [ADBH15]. 1 To be precise, the GPU execution model is Single Instruction Multiple Thread (SIMT), which extends SIMD with more flexibility in the control flow.…”
Section: Discussionmentioning
confidence: 99%
“…Chapter 6 (Verification of GPGPU Programs): gives a short introduction to GPGPU programming and presents how we reason about the data race freedom and functional correctness of GPGPU kernels that use atomic operations. This chapter is based on the paper "Specification and Verification of Atomic Operations in GPGPU Programs", which was published at SEFM 2015 [ADBH15].…”
mentioning
confidence: 99%
See 1 more Smart Citation
“…Note that the barrier always synchronizes threads inside the inner block. We refer to [BHM14,ADBH15] for more details about reasoning of GPU programs with barriers and atomic operations.…”
Section: Cuda To Pvl Transformationmentioning
confidence: 99%