GPU Glossary
/device-hardware/streaming-multiprocessor-architecture

Streaming Multiprocessor Architecture

Streaming Multiprocessors (SMs) are versioned with a particular "architecture" that defines their compatibility with Streaming Assembler (SASS) code.

A streaming multiprocessor with the "Hopper" SM90 architecture. Modified from NVIDIA's H100 white paper .

A streaming multiprocessor with the original "Tesla" SM architecture. Modified from Fabien Sanglard's blog

Most SM versions have two components: a major version and a minor version.

The major version is almost synonymous with GPU architecture family. For example, all SM versions 6.x are of the Pascal Architecture. Some NVIDIA documentation even makes this claim directly . But, as an example, Ada GPUs have SM architecture version 8.9, the same major version as Ampere GPUs.

Target SM versions for SASS compilation can be specified when invoking nvcc, the NVIDIA CUDA Compiler Driver . Compatibility across major versions is explicitly not guaranteed. For more on compatibility across minor versions, see the documentation for nvcc .

Something seem wrong?
Or want to contribute?
Email: glossary@modal.com