nemo_automodel.components.models.minimax_m3_vl.kernels
nemo_automodel.components.models.minimax_m3_vl.kernels
Model-private MSA kernels, bound lazily by msa_bindings.kernels; no eager CuTe imports.
The SM100 kernel modules are CuTe DSL source and call require_cute_dsl before their first DSL
import, so a host without the msa extra sees UnavailableError instead of ModuleNotFoundError.
Submodules
nemo_automodel.components.models.minimax_m3_vl.kernels.msa_backward_postprocess_sm100nemo_automodel.components.models.minimax_m3_vl.kernels.msa_backward_preprocess_sm100nemo_automodel.components.models.minimax_m3_vl.kernels.msa_backward_sm100nemo_automodel.components.models.minimax_m3_vl.kernels.msa_schedulenemo_automodel.components.models.minimax_m3_vl.kernels.msa_task_build_sm100
Package Contents
Functions
Data
API
Refuse to bind the CuTe DSL in a kernel module on a host that cannot import it.
The SM100 kernel modules are CuTe DSL source: their decorators, annotations and module constants
need cutlass and cuda.bindings while the module loads, and the CI import walker imports
every module of the package on hosts without the msa extra. Each kernel module calls this before
its first DSL import so absence surfaces as UnavailableError, the signal both the walker and
msa_bindings.kernels understand. It is the software twin of require_sm100: one gates
the toolchain at import, the other the device at launch.
Raises:
UnavailableError: Ifcutlassorcuda.bindings.drivercannot be imported.
Reject any device the MSA kernels are not built for, before compiling or launching one.
Parameters:
CUDA device the caller is about to run MSA kernels on.
Raises:
NotImplementedError: Ifdeviceis not SM100.
Return the memoized CUDA compute capability of device.
torch.cuda.get_device_capability costs about 1.6 us and require_sm100 runs on every MSA
forward; a device’s capability cannot change, so look it up once per device.
Parameters:
CUDA device taken from a tensor, which always carries an explicit index.
Returns: tuple[int, int]
The (major, minor) compute capability of that device.
Return the memoized streaming-multiprocessor count of device; it sizes the backward CTA walk.
Parameters:
CUDA device taken from a tensor, which always carries an explicit index.
Returns: int
The number of streaming multiprocessors of that device.