parallel.gpu.enableCUDAForwardCompatibility
查询和设置 GPU 设备的前向兼容性
说明
如果启用了 GPU 设备的向前兼容性,则 返回 tf = parallel.gpu.enableCUDAForwardCompatibility()true,否则返回 false。默认值为 false。
当禁用向前兼容性时,您无法使用在您使用的 MATLAB® 版本构建之后发布的架构的 GPU 设备执行计算。
parallel.gpu.enableCUDAForwardCompatibility( 启用或禁用 GPU 设备的向前兼容性。tf)tf 必须是 true (1) 或 false (0)。
如果启用向前兼容性,则当您第一次访问具有比 CUDA® 版本更新的架构的设备时,MATLAB 驱动程序会重新编译 GPU 库。重新编译可能需要几分钟。
启用前向兼容性在 MATLAB 会话之间不是持久的。
示例
输入参数
GPU 设备的前向兼容性
注意
从 R2020b 开始,GPU 设备的前向兼容性默认被禁用。
在 R2020a 及更早版本中,您无法禁用 GPU 设备的前向兼容性。
启用向前兼容性以使用在您的 MATLAB 版本之后发布的架构的 GPU 设备。
当您启用向前兼容性时,当您第一次访问具有比 CUDA 版本更新的架构的设备时,MATLAB 驱动程序会重新编译 GPU 库。重新编译最多需要一个小时。为了防止这种延迟再次发生,请增加 CUDA 缓存大小。有关如何增加 CUDA 缓存大小的说明,请参阅 增加 CUDA 缓存大小。
小心
启用前向兼容性可能会导致 GPU 计算期间出现错误答案和意外行为。
设备库重新编译的成功程度取决于设备架构和 CUDA 使用的 MATLAB。在某些情况下,前向兼容性不能按预期工作,并且重新编译库会导致错误。
例如,从 CUDA 版本 10.0–10.2(MATLAB 版本 R2019a、R2019b、R2020a 和 R2020b)到 Ampere(计算能力 8.x)的向前兼容性功能有限。
为 GPU 设备启用前向兼容性
您可以使用其中任一方法启用 GPU 设备的前向兼容性。
使用
parallel.gpu.enableCUDAForwardCompatibility函数。当您使用此函数时,MATLAB 会话之间的前向兼容性不会持续。为了在 MATLAB 启动时自动启用前向兼容性,请在startup脚本中调用parallel.gpu.enableCUDAForwardCompatibility函数。将
MW_CUDA_FORWARD_COMPATIBILITY环境变量设置为1。此设置保留了 MATLAB 会话之间的前向兼容性。如果在 MATLAB 运行时更改环境变量,则必须重新启动 MATLAB 才能看到效果。
增加 CUDA 缓存大小
要增加 CUDA 缓存大小,请将 CUDA_CACHE_MAXSIZE 环境变量设置为最小 536870912 (512 MB)。
设置环境变量
要在 MATLAB 客户端上设置环境变量,请使用 setenv 函数。如果您正在使用并行工作单元,请参阅设置工作单元的环境变量。
扩展功能
版本历史记录
在 R2020b 中推出