阵列存储在GPU上
一个gpuArray
对象表示存储在GPU上的数组。一起工作gpuArray
对象,使用任何支持gpu的MATLAB®函数。您可以将数组用于直接计算或在GPU上执行的CUDA内核中。有关更多信息,请参阅在GPU上运行MATLAB函数.
如果要从GPU检索阵列,例如在使用不支持的函数时金宝appgpuArray
对象,使用收集
函数。
请注意
当GPU不可用时,您可以将包含gpuArray数据的MAT文件作为内存阵列加载。不使用GPU加载的gpuArray受到限制,您无法将其用于计算。若要使用不使用GPU加载的gpuArray,请使用收集
.
有几种方法可以检验a的特性gpuArray
对象。大多数函数的行为类似于同名的MATLAB函数。
其他的方法gpuArray
对象太多,无法在这里列出。最类似和行为相同的MATLAB函数相同的名字。看到在GPU上运行MATLAB函数.
如果您需要提高性能,或者GPU无法使用某个功能,gpuArray
金宝app支持以下选项:
预编译并运行纯元素代码gpuArray
对象,使用arrayfun
函数。
运行包含CUDA的C++代码®设备代码或库调用,请使用MEX函数。有关更多信息,请参阅运行包含CUDA代码的mex函数.
要运行用CUDA c++编写的现有GPU内核,请使用MATLAB CUDAKernel接口。有关更多信息,请参见在GPU上运行CUDA或PTX代码.
要从MATLAB代码生成CUDA代码,使用GPU Coder™。有关更多信息,请参见开始使用GPU编码器(GPU编码器).
可以通过控制图形处理器上的随机数流gpurng
.
下列各项不能超过intmax('int32')
:
密集数组的元素数。
稀疏数组中非零元素的数目。
任何给定维度中的大小。例如,0 (0 3 e9 gpuArray)
是不允许的。
您还可以创建一个gpuArray
使用MATLAB函数,通过指定gpuArray
输出。下表列出了可以创建的MATLAB函数gpuArray
直接的对象。
|
|
|
|
|
|
|
gpuArray。 冒号 |
|
gpuArray。 freqspace |
|
gpuArray。 linspace |
|
gpuArray。 日志空间 |
gpuArray。 speye |
有关函数的类特定帮助,请参见gpuArray
前缀,类型
帮助gpuArray。函数名
在哪里函数名
方法的名称。例如,获取冒号
类型
帮助gpuArray.colon