-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
해결됨
kernelMatCpy에서는 __syncthreads가 필요없지 않나요
23.12.09 15:39 작성 조회수 95
0
제목 그대로 kernelMatCpy에서는 각 스레드 작업이 다른 스레드에 영향을 주지 않기 때문에 필요없을 것 같은데요. 실제로 __stncthreads()를 제거하고 돌려봐도 정상적으로 결과가 나오구요.
혹시 이런 경우라도 내부적으로 꼬일 수 있어서 사용하신 것인지 아니면 대부분의 shared memory로 복사해서 쓰는 경우에 필요하기 때문에 습관(?)차원에서 사용하신 것인지 궁금합니다.
답변을 작성해보세요.
1
드립커피+한모금더
지식공유자2023.12.09
안녕하세요.
해당 부분에서는 "습관"으로 생각하시면 되겠습니다.
많은 경우에, kernel 실행 후에, 다른 kernel 이 연달아 실행되거나, 말씀하신 대로, shared memory 에서 즉시 사용하거나 하는 경우가 많아서, 보통 습관적으로 sync threads 를 하는 편입니다.
꼼꼼하게 따져보면, 예제 프로그램에서는 불필요한 경우가 가끔 있습니다. 참고하십시오.
감사합니다.
답변 1