GPU Hardware

Streaming Multiprocessor

Основной вычислительный блок GPU NVIDIA — синоним SM, содержащий ядра и Tensor Cores.

Что такое Streaming Multiprocessor

Streaming Multiprocessor (SM) — основной вычислительный блок GPU NVIDIA. Полное название термина, также известного как SM. GPU состоит из множества SM: H100 имеет 132 SM, A100 — 108 SM.

Каждый SM включает:

  • CUDA-ядра — для вычислений FP32/INT32
  • Tensor Cores — для матричных операций BF16/FP8
  • Разделяемую память (shared memory) — быстрый scratchpad ~256 КБ
  • Кеш L1 — объединён с shared memory
  • Планировщик варпов — управляет переключением между варпами

Значение occupancy

Occupancy — процент максимально возможных активных варпов в SM. Высокая occupancy позволяет GPU скрывать задержки доступа к памяти (latency hiding):

# Профилирование с Nsight Compute
ncu --metrics sm__warps_active.avg.pct_of_peak_sustained_active \
    python train.py

Целевое значение для хорошей утилизации: >50% occupancy.

Связанные термины

  • SM — сокращённый термин для того же понятия
  • CUDA — программная модель поверх SM
  • Tensor Core — специализированные блоки внутри SM
  • MIG — физически делит SM между изолированными экземплярами

Готовы запустить GPU-задачу?

Запустить GPU-сервер