2016-07-11 2 views
1

CUDA PTX에는 스레드의 워프 인덱스 인 %warpid을 보유하는 특수 레지스터가 있습니다. 이제 사양은 말합니다 : %warpid은 휘발성이고 읽을 때 순간 스레드 의 위치를 ​​반환하지만 그 값이 때문에 선점 다음 스레드의 재조정에, 예를 들어, 실행, 중 변경 될 수CUDA PTX에서 % warpid는 무엇을 의미합니까?

하는 것으로.

음, 그 위치는 어디입니까? 블록 내의 위치가 아니어야합니다 (예 : 1 차원 격자의 경우 %tid.x/warpSize? SM 내의 일부 슬롯 - 워프 (예 : 워프 스케줄러 또는 일부 내부 대기열)입니까? 나는 혼란스러워.

동기 부여 :이 특수 레지스터를 사용하여 %tid.x/warpSize을 계산하고 등록을 무료로하고 싶었습니다.

답변

4

당신은 직접 귀하의 질문에 게시 인용 한 후 따라 문서의 다음 25 개 단어를 읽을 필요가 : 이러한 이유로

을, % ctaid 및 % TID 가상을 계산하는 데 사용되어야한다 커널 코드에 그러한 값이 필요한 경우 워프 인덱스.

다음

퍼센트 warpid은 샘플 프로파일 링 및 진단 코드를 사용하고 직장 매핑 및로드 유통 등의 정보를 기록 할 주로 것입니다.

아니요, 원하는대로 사용할 수 없습니다. %warpid은 효과적으로 블록 내의 일정하고 고유 한 워프 색인이 아닌 스케줄러 슬롯 ID입니다.

+0

실제 답변을 제공하십시오. 그리고 그 부분을 읽었습니다. 실제로 그렇게 될 수없는 것 같았습니다. 그렇다면 왜 % warpsmslot이나 % warpidinsm 또는 % warpslot이 아닌 warpid라고 부르는 지 보지 못합니다. – einpoklum

관련 문제