Aula 10: Warps e SIMT: a unidade de 32 threads
O hardware da GPU não agenda as threads uma a uma, mas em grupos fixos de 32 threads chamados de warp. Todas as 32 threads de um warp executam a mesma instrução ao mesmo tempo, em lockstep — esse é o coração do modelo SIMT (Single Instruction, Multiple Threads). O tamanho do warp é 32 em toda arquit
Pense em remadores em barcos de 32. Todo mundo num barco puxa o remo no mesmo instante, no mesmo ritmo. Você não pode mudar o tamanho do barco para 30 ou 40 — ele é sempre 32. Seu assento no barco é o lane, e o número do barco é o warp.
- warp
- Um grupo de 32 threads que o hardware agenda e executa juntas em lockstep. O tamanho do warp é fixo em 32.
- SIMT
- Single Instruction, Multiple Threads — todas as 32 threads num warp executam a mesma instrução no mesmo momento.
- lane
- A posição de uma thread dentro do seu warp: lane = threadIdx.x % 32, um valor de 0 a 31.
- warpId
- O id do warp ao qual uma thread pertence dentro do block: warpId = threadIdx.x / 32 (divisão inteira).