I am learning CUDA and I have something like this at the moment.
__device__ void iterate_temperatures(int fieldSize, Atom *atoms) {
int temperature = threadIdx.x + blockDim.x * blockIdx.x;
nAtoms = pow(fieldSize, DIMENSION);
iterate_atoms<<< nAtoms >>>(atoms, nAtoms, temperature);
}
Thing is, each temperature needs the last one's result.
How can I force each block to wait for the last one.
Thanks!
Just putting in a call to __syncthreads()
should do exactly what you want.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With