2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE) 2015
DOI: 10.1109/ase.2015.99
|View full text |Cite
|
Sign up to set email alerts
|

CIVL: Formal Verification of Parallel Programs

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
25
0

Year Published

2016
2016
2020
2020

Publication Types

Select...
4
2
1

Relationship

0
7

Authors

Journals

citations
Cited by 18 publications
(25 citation statements)
references
References 15 publications
0
25
0
Order By: Relevance
“…As GPUVerify, PUG does not verify main functions and this explains most unsupported cases (31), while others are explained by the lack of support to __syncthreads function (12), function pointers (9), and the curand.h library (7); additionally, PUG does not support the use of unsigned type modifier as argument to the function atomi-cAdd (6); changes in variables stored in constant memory (3), and inability to handle structs (2), variables with __device__ qualifier (2), and size_t type (1), in addition to other cases that PUG aborted by returning a false null pointer access (7) or because it did not recognize the NULL identifier (2). As GPUVerify, PUG does not verify main functions and this explains most unsupported cases (31), while others are explained by the lack of support to __syncthreads function (12), function pointers (9), and the curand.h library (7); additionally, PUG does not support the use of unsigned type modifier as argument to the function atomi-cAdd (6); changes in variables stored in constant memory (3), and inability to handle structs (2), variables with __device__ qualifier (2), and size_t type (1), in addition to other cases that PUG aborted by returning a false null pointer access (7) or because it did not recognize the NULL identifier (2).…”
Section: Resultsmentioning
confidence: 99%
See 2 more Smart Citations
“…As GPUVerify, PUG does not verify main functions and this explains most unsupported cases (31), while others are explained by the lack of support to __syncthreads function (12), function pointers (9), and the curand.h library (7); additionally, PUG does not support the use of unsigned type modifier as argument to the function atomi-cAdd (6); changes in variables stored in constant memory (3), and inability to handle structs (2), variables with __device__ qualifier (2), and size_t type (1), in addition to other cases that PUG aborted by returning a false null pointer access (7) or because it did not recognize the NULL identifier (2). As GPUVerify, PUG does not verify main functions and this explains most unsupported cases (31), while others are explained by the lack of support to __syncthreads function (12), function pointers (9), and the curand.h library (7); additionally, PUG does not support the use of unsigned type modifier as argument to the function atomi-cAdd (6); changes in variables stored in constant memory (3), and inability to handle structs (2), variables with __device__ qualifier (2), and size_t type (1), in addition to other cases that PUG aborted by returning a false null pointer access (7) or because it did not recognize the NULL identifier (2).…”
Section: Resultsmentioning
confidence: 99%
“…We also compare ESBMC-GPU to GKLEE [8], GPUVerify [3], PUG [7], and CIVL [9]. We also compare ESBMC-GPU to GKLEE [8], GPUVerify [3], PUG [7], and CIVL [9].…”
Section: Methodsmentioning
confidence: 99%
See 1 more Smart Citation
“…Recent advances for verifying multi-threaded C programs have been proposed to speed up the verification time, which significantly prune the state-space exploration [35,40]; however, the class of concurrent programs (e.g., CUDA, OpenCL, and MPI) that can be verified is still very limited. One possible research direction is to further extend BMC of multi-threaded C programs via Lazy Sequentialization [35], in order to analyze unsatisfiability cores [41] with the goal to remove redundant behaviour or to analyze interpolants [42] to prove noninterference of context switches.…”
Section: Current Achievements and Future Trendsmentioning
confidence: 99%
“…It contains a rare bug that is hard to find with automatic bug-finding techniques already under SC (including random testing, Nidhugg, CIVL [31], CBMC and other approaches based on BMC) [26]. The only tool we are aware of that can automatically find a genuine counter-example is Lazy-CSeq.…”
Section: Experimental Evaluationmentioning
confidence: 99%