nvmath-python 发行说明#
nvmath-python v0.2.1#
Beta2 更新 1,改进了诊断、测试增强功能和错误修复。
针对批量后记的新测试以及用于高级矩阵乘法 API 的带后记的自动调优。
为主机 API 添加了更多基于假设的测试。
改进了检测某些切片张量的重叠内存操作数的算法,从而支持 FFT 的此类布局。
为 CTK 版本 12.5 和 12.6 中引入的新 API 添加了绑定。
进一步的代码风格修复,以符合 PEP8 建议。
在文档中澄清了矩阵乘法后记的批量语义。
API 文档字符串中的代码片段现在已通过测试。
错误修复#
C2R FFT 在切片张量上可能因“非法内存访问”而失败。
改进了诊断,以检测矩阵乘法中缩放和计算类型的不兼容组合,这些组合以前可能导致不正确的结果。
当操作数 A 是向量(维度数=1)时,矩阵乘法提供了不正确的结果。
API 变更#
在
nvmath.
中的fft. FFTOptions last_axis_size
选项已被弃用,取而代之的是last_axis_parity
,以更好地反映其语义。
注意
弃用的 API 将在下一个版本中删除。
nvmath-python v0.2.0#
Beta2 版本发布。
符合 FFTW3 API 的 FFT 库(例如 MKL、NVPL)的 CPU 执行空间支持。
支持 FFT 的序言和后记回调,用 Python 编写。
用于随机数生成的新设备 API。
用于说明高级矩阵乘法 API 用法的 Notebook。
为主机 API 引入了基于假设的测试。
减少了
execute
方法中的 Python 开销。
错误修复#
对于带有 DRELU 和 DGELU 后记的 K=1,矩阵乘法可能因“非法内存访问”而失败。
打包#
增加了对 NumPy 2 的支持。
移除对 Python 3.9 的支持。
补丁更改和 pynvjitlink 版本。
已知问题#
当
nvmath.
的linalg. advanced. Matmul compute_type
参数设置为COMPUTE_16F
时,会选择与scale_type
不兼容的默认值,导致 CTK 12.6 之前的版本结果不正确,而 CTK 12.6 及更新版本则会出错。作为一种解决方法,我们建议根据 supported data types table 以兼容的方式设置compute_type
和scale_type
。
nvmath-python v0.1.0#
初始 Beta 版本发布,仅支持单 GPU。
基于 cuFFT 的 FFT API。
基于 cuBLASLt 的专用矩阵乘法 API。
基于 MathDx 库的 FFT 和矩阵乘法的设备 API。
所需和可选的依赖项在 速查表 中进行了总结。
局限性
许多矩阵乘法后记需要 CTK 11.5+,少数需要 CTK 11.8+。有关更多详细信息,请参阅 cuBLAS 发行说明。
免责声明#
nvmath-python 处于 Beta 状态。Beta 产品可能尚未完全发挥功能,可能包含错误或设计缺陷,并且可能随时更改,恕不另行通知。我们感谢您的反馈,以改进和迭代我们的 Beta 产品。