2010-12-03 4 views
5

저는 CUDA를 배우고 있으며, 지금은 이와 같은 것을 가지고 있습니다.CUDA 초급 - 계속 진행하기 전에 스레드가 끝날 때까지 기다림을 강요하십시오.

__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); 
} 

각각의 온도는 마지막 결과를 필요로합니다.

어떻게하면 각 블록이 마지막 블록을 기다리게 할 수 있습니까?

감사합니다!

답변

8

__syncthreads()으로 전화를 걸면 원하는대로 정확하게 수행해야합니다.

관련 문제