HardwareRuta Arquitectura

Streaming Multiprocessor (SM)

Leerlo en el Capítulo 1 · checkpoint +50 XP →

El bloque básico de la GPU: planificadores, registros, memoria compartida, CUDA cores y tensor cores.

Un SM es más o menos lo que un "núcleo" es en una CPU, pero diseñado para rendimiento. Cada SM tiene planificadores de warps, un banco de registros grande, memoria compartida / L1 configurable y unidades de ejecución: "CUDA cores" FP32/INT, unidades de funciones especiales y tensor cores.

Un lanzamiento de kernel se divide en thread blocks. Cada bloque cae en un SM y se queda ahí. El SM intercala los warps de todos los bloques residentes en cada ciclo, así que cuando un warp espera a la memoria otro emite instrucciones.

Por qué te importa como operador

  • Número de SM × reloj fija los FLOP/s máximos. Una GPU limitada al 55% del reloj (por temperatura o potencia) entrega ~55% del cómputo. Ver potencia y temperatura.
  • DCGM_FI_PROF_SM_ACTIVE y SM_OCCUPANCY (de DCGM) te dicen si los SM están realmente ocupados. La "GPU utilization" de nvidia-smi solo significa que algún kernel estaba corriendo, no que todos los SM trabajaran.

Relacionado

Fuentes y lecturas adicionales

Escrito para LazyLab con nuestras propias palabras; las fuentes se citan para profundizar y verificar.