Closed cs17resch01003 closed 3 years ago
Hi @cs17resch01003
Thanks for your merge request. We're committed from our side to get this merged, but both @afd and I are quite busy at the moment, so things might move a bit slowly. Our apologies for this in advance.
To start, two requests:
kernel.cu
. These need to be located below https://github.com/mc-imperial/gpuverify/tree/master/testsuite/CUDA . If you need inspiration with regard to directory structure, have a look at the curand tests in https://github.com/mc-imperial/gpuverify/tree/master/testsuite/CUDA/curand_testsThanks,
Jeroen
Thank you for the reply. I will make the required changes and raise new pull requests. @sbjoshi
As a part of our work (@cs17resch01003 and @sbjoshi) on GPURepair (https://arxiv.org/abs/2011.08373), we have extended Bugle and GPUVerify to support the CUDA Cooperative Groups API (https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#cooperative-groups). This pull request depends on https://github.com/mc-imperial/bugle/pull/8. There are two changes in this pull request:
We have tried to maintain the same code formatting as that of the existing code. Please let us know if any changes are needed or if there are any questions.
One thing we noticed is that the Travis build configuration checks out the code for libclc from version bac1578088e of https://git.llvm.org/git/libclc.git/ which doesn't exist anymore. For GPURepair, we are using https://github.com/llvm/llvm-project/tree/release/8.x/libclc which we believe is the closest to the checked-out version. With that change one of the test cases (OpenCL/pointeranalysistests/manyprocedures) is failing. GPUverify is able to identify null pointer accesses and write-write races for this kernel. This test case is failing even without our code changes. Attaching the output from GPUVerify. Please let us know if any further investigation is needed from our side.