nvmath.linalg.advanced.MatmulPlanPreferences

class nvmath.linalg.advanced.MatmulPlanPreferences(reduction_scheme_mask: ReductionScheme | None = ReductionScheme.MASK, max_waves_count: float | None = 0.0, numerical_impl_mask: MatmulNumericalImplFlags | None = 18446744073709551615, limit: int = 8)[source]

A data class for providing options to the Matmul.plan() method and the wrapper function matmul().

reduction_scheme_mask

Enumerators from linalg.advanced.MatmulReductionScheme combined with bitwise operator |. The default is all reduction schemes.

Type:

object of type linalg.advanced.MatmulReductionScheme

max_waves_count

The maximum wave count. Selecting a value greater than 0. will exclude algorithms with device utilization greater than specified. The default is 0.

Type:

float

numerical_impl_mask

Enumerators from linalg.advanced.MatmulNumericalImplFlags combined with bitwise operator |. The default is all numerical implementation flag choices.

Type:

object of type linalg.advanced.MatmulNumericalImplFlags

limit

The number of algorithms to consider. If not specified, a suitable default will be chosen.

Type:

int