We present a technique for verifying race- and divergence-freedom of GPU kernels that are written in mainstream ker-nel programming languages such as OpenCL and CUDA. Our approach is founded on a novel formal operational se-mantics for GPU programming termed synchronous, delayed visibility (SDV) semantics. The SDV semantics provides a precise definition of barrier divergence in GPU kernels and allows kernel verification to be reduced to analysis of a sequential program, thereby completely avoiding the need to reason about thread interleavings, and allowing existing modular techniques for program verification to be leveraged. We describe an efficient encoding for data race detection and propose a method for automatically inferring loop invar...
Abstract. Graphics Processing Units (GPUs) from leading vendors employ pred-icated (or guarded) exec...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
This thesis is about scalable formal verification techniques for software. A verification technique ...
We present a technique for the formal verification of GPU kernels, addressing two classes of correct...
We present a technique for the formal verification of GPU kernels, addressing two classes of correct...
I present a tutorial overview demonstrating the key technique used by GPUVerify, a static verificati...
Abstract Graphics Processing Units (GPUs) are increasingly used for general-purpose applications bec...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
Abstract: I present a tutorial overview demonstrating the key technique used by GPUVerify, a static ...
The tremendous computing power GPUs are capable of makes of them the epicenter of an unprecedented a...
GPUVerify is a static analysis tool for verifying that GPU kernels are free from data races and barr...
We report on practical experiences over the last 2.5 years related to the engineering of GPUVerify, ...
pre-printWe present an automated symbolic verifier for checking the functional correctness of GPGPU ...
Abstract. Graphics Processing Units (GPUs) are increasingly used for general-purpose applications be...
Abstract. Graphics Processing Units (GPUs) from leading vendors employ pred-icated (or guarded) exec...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
This thesis is about scalable formal verification techniques for software. A verification technique ...
We present a technique for the formal verification of GPU kernels, addressing two classes of correct...
We present a technique for the formal verification of GPU kernels, addressing two classes of correct...
I present a tutorial overview demonstrating the key technique used by GPUVerify, a static verificati...
Abstract Graphics Processing Units (GPUs) are increasingly used for general-purpose applications bec...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
Abstract: I present a tutorial overview demonstrating the key technique used by GPUVerify, a static ...
The tremendous computing power GPUs are capable of makes of them the epicenter of an unprecedented a...
GPUVerify is a static analysis tool for verifying that GPU kernels are free from data races and barr...
We report on practical experiences over the last 2.5 years related to the engineering of GPUVerify, ...
pre-printWe present an automated symbolic verifier for checking the functional correctness of GPGPU ...
Abstract. Graphics Processing Units (GPUs) are increasingly used for general-purpose applications be...
Abstract. Graphics Processing Units (GPUs) from leading vendors employ pred-icated (or guarded) exec...
Graphics Processing Units (GPUs) are increasingly used for general-purpose applications because of t...
This thesis is about scalable formal verification techniques for software. A verification technique ...