Hi
I think I understand, how async-wait-pairs may synchronize GPU and CPU.
I’d like to have a better understanding how different async-tasks on GPU interfere:
!$acc kernel async(1)
... long computational task ...
!$acc end kernel
... CPU-computation with somedata
!$acc update device (somedata)
... CPU-computation with somedata
!$acc wait(1)
What des happens here?
*“update device” and the CPU-computation executes asynchron with the firtst acc-kernel.
- The GPU is busy. Therefore “update device” has to wait for the kernel to finish
Bye
Benedikt