线性代数#

概述#

线性代数模块 nvmath.linalg 在 nvmath-python 中利用了各种 NVIDIA 数学库,以支持多种线性代数计算。在最初的 Beta 版本中,我们提供了基于 cuBLASLt 库的专用矩阵乘法 API。

API 参考#

通用线性代数 API (nvmath.linalg)#

通用 API 将在以后的版本中提供。

专用线性代数 API (nvmath.linalg.advanced)#

matmul(a, b, /[, c, alpha, beta, epilog, ...])

执行指定的矩阵乘法计算 \(F(\alpha a @ b + \beta c)\),其中 \(F\) 是 epilog。

matrix_qualifiers_dtype

NumPy dtype 对象,封装了 linalg.advanced 中的矩阵限定符。

Algorithm(算法)

一个用于查询算法功能和配置算法的接口类。

Matmul(a, b, /[, c, alpha, beta, ...])

创建一个有状态对象,封装指定的矩阵乘法计算 \(\alpha a @ b + \beta c\) 以及执行该操作所需的资源。

MatmulComputeType

别名: ComputeType

MatmulEpilog

别名: Epilogue

MatmulInnerShape(value[, names, module, ...])

参见 cublasLtMatmulInnerShape_t

MatmulNumericalImplFlags(value[, names, ...])

这些标志可以与 | 运算符组合使用:OP_TYPE_FMA | OP_TYPE_TENSOR_HMMA ...

MatmulReductionScheme

别名: ReductionScheme

MatmulOptions([compute_type, scale_type, ...])

一个数据类,用于为 Matmul 对象和包装器函数 matmul() 提供选项。

MatmulPlanPreferences([...])

一个数据类,用于为 Matmul.plan() 方法和包装器函数 matmul() 提供选项。