2016-10-18 2 views
-1

워프의 스레드 수가 32 이상일 수 있음을 읽었습니다. 그게 왜? 스레드 수가 32 개보다 적 으면 리소스가 충분히 활용되지 못하거나 메모리 대기 시간을 허용하지 못할 것입니다.워프의 스레드 수가 32보다 작은 경우 어떻게됩니까?

+1

질문을 이해할 수 없습니다. 워프 당 스레드 수는 과거와 현재의 모든 지원되는 CUDA 하드웨어에서 정확히 32입니다. – talonmies

답변

1

귀하의 질문에 명확한 설명이 필요합니다. 아마도 CUDA의 "워프"및 "블록"개념을 혼동하고 있습니까?

워프와 관련해서 워프와 그 크기는 하드웨어의 속성이라는 것을 기억해야합니다. Warp는 매주기마다 동일한 명령어 (요즘)를 실행하는 하드웨어 스레드 그룹입니다. 즉, 크기 너비는 프로그래머가 변경할 수없는 SIMD 스타일 실행 너비를 나타냅니다. CUDA에서는 하드웨어에 매핑 될 때 워프 크기의 묶음으로 실행되는 스레드 블록을 실행합니다. 워프 크기로 나눌 수없는 스레드 카운트를 가진 블록을 시작하면, 하드웨어는 "마스크 아웃 된"스레드의 일부를 사용하여 마지막 워프를 실행합니다 (즉, 실행해야하지만 실행중인 스레드의 상태에 영향을 미치지 않습니다). GPU/메모리).

자세한 내용은 hardware and execution-related sections of the CUDA programming guide을 자세히 읽어 보시기 바랍니다.

관련 문제