设计模式

GPU编码器™支持一些金宝app设计模式,有效地映射到GPU的结构。

模具加工

模版内核操作计算输出数组作为输入数组的一个小区域的功能的每个元素。你可以表达许多过滤操作作为模板操作。实例包括卷积,中值滤波,和有限元法。

在GPU编码器执行模版内核,每个线程计算输出阵列中的一个元件。因为一个给定的输入元件被重复访问用于计算多个相邻输出元件,GPU编码器使用共享存储器以改善存储器带宽和数据局部性。

使用gpucoder.stencilKernel功能营造CUDA®用于模版函数的代码。有关演示模板preocessing示例,请参见模具加工对GPU

对于非常大的输入大小不一,gpucoder.stencilKernel函数可能会产生CUDA代码不数值匹配MATLAB®模拟。在这种情况下,考虑减少输入的大小,以产生准确的结果..

矩阵,矩阵处理

许多科学应用程序包含形式的矩阵,矩阵运算,包括通用矩阵到矩阵乘法(GEMM)C = AB在这里你可以选择转一个。这种矩阵的矩阵运算的代码通常需要的图案:

对于X = 1:M对于Y = 1:N对于Z = 1:K C(X,Y)= F(A(X,Z),B(Z,Y));结束结束结束

哪里F()是一个用户定义的功能。在这些操作中,从一个输入矩阵和从第二输入矩阵的列的行被用于计算所述输出矩阵的相应元素。每个线程重新加载的行和列。这种设计模式允许该结构的优化通过重用数据和使每个线程计算多个输出元件。

例如,F()可以是规则的矩阵乘法,F()= @ mtimes。对于这种模式,编码器GPU提供MatrixMatrix内核建立在GPU上高效,快速实现矩阵间运算的。

使用gpucoder.matrixMatrixKernel功能和用于执行矩阵矩阵型操作创建CUDA代码。

也可以看看

||||

相关的例子

更多关于