文档

在GPU上运行内置函数

MATLAB函数gpuArray参数

许多MATLAB®内置函数支持万博1manbetxgpuArray输入参数。无论何时调用这些函数和至少一个gpuArray作为输入参数,函数在GPU上执行并生成gpuArray作为结果。您可以使用gpuArray和MATLAB混合输入数组相同的函数调用;MATLAB函数的数组是转移到GPU执行。万博1manbetx支持功能包括离散傅里叶变换(fft),矩阵乘法(mtimes),左矩阵分裂(mldivide)。

以下功能和象征运营商增强接受gpuArray输入参数,这样他们在GPU执行:

看到更新个人信息的发布说明功能。

任何限制或限制的信息有关的支持这些功能gpuArray对象类型:万博1manbetx

帮助gpuArray /functionname

例如,查看帮助的过载、类型

帮助gpuArray /逻辑单元

在大多数情况下,如果这些函数的输入参数是一个gpuArray, gpuArrays任何输出数组。如果输出始终是标量,它返回在工作区中MATLAB数据。如果结果是gpuArray复杂的数据和所有的虚部为零,这些部分被保留和数据仍是复杂的。这可能在使用产生影响排序,伊斯雷尔等。

例如:与gpuArray输入和输出功能

下面的例子使用了fft真正的功能,随着算术运算符+*。所有的计算都是在GPU上执行,那么收集检索的数据GPU回MATLAB工作区。

Ga =兰德(1000“单一”,“gpuArray”);Gfft = fft (Ga);Gb =(真正的(Gfft) + Ga) * 6;G =收集(Gb);

命令的显示每个变量数据存储的地方。

名称大小字节类G 1000 x1000 1000单Ga 4000000 x1000 108 gpuArray Gb 1000 x1000 108 gpuArray Gfft 1000 x1000 108 gpuArray

请注意,所有的数组存储在GPU (gpuArray),除了G的结果收集函数。

在GPU稀疏阵列

稀疏gpuArrays以下功能支持。万博1manbetx

abs角bicg bicgstab装天花板classUnderlying连词ctranspose函数结束expm1找到修复地板全部gmr gpuArray。speye图像放大isaUnderlying isdiag isempty
isequal isequaln isfloat isinteger islogical isnumeric伊斯雷尔issparse istril istriu长度log1p - mtimes ndims nextpow2 nnz非零元素个数nzmax首选
+ rad2deg真正realsqrt圆形标志大小稀疏spfun spones sprandsym√6和转置下三角阵triu uminus uplus

您可以创建一个稀疏gpuArray要么通过调用稀疏的gpuArray输入,或通过调用gpuArray稀疏的输入。例如,

x = [0 1 0 0 0;0 0 0 0 1)
0 1 0 0 0 0 0 0 0 1
s =稀疏(x)
(1、2)1 (2、5)1
g = gpuArray(年代);% g是一个稀疏gpuArraygt = ' (g);% gt是一个稀疏gpuArrayf =全(gt)% f是一个完整的gpuArray
0 0 1 0 0 0 0 0 0 1

考虑复数

如果函数运行在GPU上的输出可能复杂,您必须显式地指定它的输入参数复杂。这适用于gpuArray由中调用函数或代码arrayfun

例如,如果创建一个gpuArray可能负面元素,使用G = gpuArray(复杂(p)),那么你就可以成功地执行sqrt (G)

或者,在一个传递给函数arrayfun,如果x是一个向量的实数,和一些元素有负值,sqrt (x)将生成一个错误;相反,你应该叫√复杂(x))

下表列出了可能返回复杂数据的函数,随着输入范围的输出仍然是真实的。

函数 输入范围实际产出
这些“可信赖医疗组织”(x) abs (x) < = 1
作用(x) x > = 1
acoth (x) abs (x) > = 1
正式启动(x) abs (x) > = 1
asec (x) abs (x) > = 1
asech (x) 0 < = x < = 1
正如(x) abs (x) < = 1
atanh abs (x) < = 1
日志(x) x > = 0
log1p (x) x > = 1
log10 (x) x > = 0
log2 (x) x > = 0
功率(x, y) x > = 0
reallog (x) x > = 0
realsqrt (x) x > = 0
sqrt (x) x > = 0

确认

岩浆是一个线性代数库例程,利用GPU加速。gpuArrays并行计算实现线性代数函数工具箱™杠杆岩浆实现性能和精度高。

另请参阅

|||

这个主题有帮助吗?