用matlab使用您的GPU®,必须安装最近的图形驱动程序。最佳实践是确保您拥有设备的最新驱动程序。安装驱动程序足以在Matlab中大多数使用GPU,包括GPUArray.
和支持GPU的MATLAB功能。您可以为GPU设备下载最新的驱动程序nvidia.司机下载。
看到对NVID万博1manbetxIA的支持®MATLAB发布的GPU架构,请咨询下表。
这CC.数字显示GPU架构的计算能力。检查GPU计算能力,请参阅computEapability.
在输出中GPudevice.
功能。或者,参见CUDA GPU(NVIDIA)。
matlab释放 | 安培(CC8.x) | 图灵(CC7.5) | Volta(CC7.0,CC7.2) | Pascal(CC6.x) | 麦克斯韦(CC5.x) | 开普勒(CC3.5,CC3.7) | 开普勒(CC3.0,CC3.2) | 费米(CC2.x) | 特斯拉(CC1.3) | CUDA.®工具包版本 |
---|---|---|---|---|---|---|---|---|---|---|
R2021A |
|
|
|
|
|
|
11.0 | |||
R2020B. |
|
|
|
|
|
|
|
10.2 | ||
R2020A |
|
|
|
|
|
|
|
10.1 | ||
R2019B. |
|
|
|
|
|
|
|
10.1 | ||
R2019A. |
|
|
|
|
|
|
|
10.0 | ||
R2018B. |
|
|
|
|
|
|
|
9.1 | ||
R2018A |
|
|
|
|
|
|
|
9.0 | ||
R2017B. |
|
|
|
|
|
|
|
|
8.0 | |
R2017A |
|
|
|
|
|
|
|
|
8.0 | |
R2016B. |
|
|
|
|
|
|
|
|
7.5 | |
R2016A |
|
|
|
|
|
|
|
|
7.5 | |
R2015B. |
|
|
|
|
|
|
|
|
7.0 | |
R2015A. |
|
|
|
|
|
|
|
|
6.5 | |
R2014B. |
|
|
|
|
|
|
|
|
6.0 | |
R2014A |
|
|
|
|
|
|
|
|
|
5.5 |
R2013B. |
|
|
|
|
|
|
|
|
|
5.0 |
R2013A |
|
|
|
|
|
|
|
|
|
5.0 |
R2012B. |
|
|
|
|
|
|
|
|
|
4.2 |
R2012A. |
|
|
|
|
|
|
|
|
|
4.0 |
R2011B. |
|
|
|
|
|
|
|
|
|
4.0 |
- 内置二进制支持。万博1manbetx
- 万博1manbetx将在将来的版本中删除对Bepler和Maxwell GPU架构的支持。此时,使用MATLAB的GPU将需要具有计算能力6.0或更大的GPU设备。Matlab在使用Bepler或Maxwell GPU时第一次生成警告。
- 万博1manbetx通过前向兼容性支持。必须在未优化版本的运行时编译优化的设备库。万博1manbetx支持可以限制,您可能会看到错误和意外行为。有关更多信息,请参阅GPU设备的前向兼容性。
- 默认情况下,不支持此架构。万博1manbetx您可以通过启用GPU设备的转发万博1manbetx兼容性来启用支持。您可能会看到错误和意外行为。有关更多信息,请参阅GPU设备的前向兼容性。
如果要使用GPU编码器™生成CU代码或CUDA兼容源代码,库和可执行文件的CUDA内核对象,则必须安装CUDA Toolkit。CUDA Toolkit包含CUDA库和编译工具。您不需要工具包以在GPU上运行MATLAB函数,或生成支持CUDA的MEX功能。
任务 | 要求 |
---|---|
获取最新的图形驱动程序nvidia.司机下载。 您也不需要CUDA工具包。 |
|
|
安装MATLAB版本支持的CUDA Toolkit的版本。万博1manbetx |
*要在MATLAB中创建CUDA内核对象,您必须具有CU文件和相应的PTX文件。从CU文件编译PTX文件需要CUDA Toolkit。如果您已有相应的PTX文件,则不需要工具包。
有关在Matlab中生成CUDA代码的更多信息,请参阅运行包含CUDA代码的MEX函数和在GPU上运行CUDA或PTX代码。并非CUDA Toolkit支持的所万博1manbetx有编译器都支持Matlab。
您需要的工具包版本取决于您正在使用的MATLAB版本。检查Toolkit的哪个版本与您在表中的MATLAB版本中兼容万博1manbetx支持的GPU。推荐的最佳实践是使用最新版本的支持工具包,包括来自NVIDIA的任何更新和修补程序。万博1manbetx
有关CUDA Toolkit的更多信息,并下载支持的版本,请参阅万博1manbetxCUDA Toolkit档案(nvidia.)。
笔记
从R2020B开始,默认情况下禁用GPU设备的前向兼容性。
在R2020A和早期版本中,您无法禁用GPU设备的前向兼容性。
前向兼容性允许您使用带有在运行时重新编译设备库之后建立MATLAB后释放的GPU设备。
启用前向兼容性时,CUDA驱动程序首次访问具有比MATLAB版本更新的架构的设备首次访问GPU库。重新编译可能需要一个小时。增加CUDA缓存大小以防止这种延迟的复发。有关说明,请参阅增加CUDA缓存大小。
禁用前向兼容性时,您无法使用带有MATLAB版本的MATLAB版本在您使用的MATLAB版本后发布的架构进行计算。如果要在MATLAB中使用此GPU设备,则必须启用正向兼容性。
警告
启用前进兼容性可能会导致GPU计算期间的错误答案和意外行为。
设备库重新编译的成功程度可以根据设备架构和Matlab使用的CUDA版本而异。在某些情况下,正向兼容性与图书馆的预期和重新编译导致错误不起作用。
例如,来自CUDA版本10.0-10.2(MATLAB版本R2019A,R2019B,R2020A和R2020B)的向前兼容到AMPERE(Compute能力8.x)的功能仅具有有限的功能。
您可以使用以下方法启用GPU设备的正向兼容性。
使用功能parallel.gpu.enablecudaforwardcompatibility.
。使用此方法启用前向兼容性在MATLAB会话之间不持久。
设置环境变量mw_cuda_forward_compatibility.
到1
。这可以保留MATLAB会话之间的前向兼容性。如果在MATLAB运行时更改环境变量,则必须重新启动MATLAB以查看效果。在客户端上,您可以使用setenv.
设置环境变量。然后,您可以将环境变量从客户端复制到工人,以便工人以与客户端相同的方式执行计算。有关更多信息,请使用在工人上设置环境变量。
如果您的GPU架构在MATLAB发布中没有内置二进制支持,则图形驱动程序必须编译和缓存GPU库。万博1manbetx第一次访问来自MATLAB的GPU,此过程最多可能需要一小时。要增加CUDA缓存大小以防止此延迟复发,请设置环境变量CUDA_CACHE_MAXSIZE.
最少536870912
(512 MB)。在客户端上,您可以使用setenv.
设置环境变量。然后,您可以将环境变量从客户端复制到工人,以便工人以与客户端相同的方式执行计算。有关更多信息,请使用在工人上设置环境变量。