Missing synchronization after asynchronous copies?
This error was found with [oclgrind](https://github.com/jrprice/Oclgrind/wiki/Using-Oclgrind)
and points to the last asynchronous copies in [kernel4](https://git.esa.informatik.tu-darmstadt.de/docking/ocladock/blob/debugfastergrad/device/kernel4.cl) and
[kernel_gradient](https://git.esa.informatik.tu-darmstadt.de/docking/ocladock/blob/debugfastergrad/device/kernel_gradient.cl):
```zsh
Work-item finished without waiting for events.
```
Other kernels might suffer from this too:
* See [master](https://git.esa.informatik.tu-darmstadt.de/docking/ocladock/blob/master/device/kernel4.cl#L296) -> `kernel3` and `kernel4`.
* See [debugfastergrad](https://git.esa.informatik.tu- darmstadt.de/docking/ocladock/blob/debugfastergrad/device/kernel4.cl#L311) -> `kernel3`, `kernel4`, `kernel_gradient`, and `kernel_fire`.
Keep in mind the following information from the [v2.0 standard](https://www.khronos.org/registry/OpenCL/sdk/2.0/docs/man/xhtml/async_work_group_copy.html):
> **This function does not perform any implicit synchronization of source data such as using a barrier before performing the copy.**
>**The kernel must wait for the completion of all async copies using the wait_group_events built-in function before exiting; otherwise the behavior is undefined.**
issue