主要内容

pagefun

功能适用于分布式数组或gpuArray的每一页

描述

一个= pagefun (有趣的,B)适用于指定的函数有趣的每一页的数组或gpuArray分布B。结果一个这样的结果包含了每一页(:,:,I, J,…) =乐趣(B (:,:, I, J,…))一个是一种分布式阵列或gpuArray,根据数组类型的B有趣的是一个函数,接受一个二维的处理输入参数。

例子

一个= pagefun (有趣的,B1,…, Bn)评估有趣的使用页面的数组B1,…, Bn启用了标量扩张作为输入参数。标量的任何输入页面的尺寸几乎是复制到匹配的大小,以便其他数组维度(:,:,I, J,…) =乐趣(B1 (:,:, I, J,…),…, Bn (:,:, I, J,…))。输入页面B (:,:, I, J,…),…, Bn (:,:, I, J,…),必须满足输入的要求有趣的

如果你打算打几个电话pagefun,更有效率,它首先将这个数组转换成一个分布式阵列或gpuArray。

(A1,…,)= pagefun (有趣的,___)返回多个输出数组A1,…,当这个函数有趣的返回输出值。pagefun调用有趣的每次和尽可能多的输出有电话pagefun,也就是说,次了。有趣的可以返回输出参数具有不同的数据类型,但是每个输出的数据类型必须相同每次有趣的被称为。

例子

全部折叠

这个例子展示了如何使用pagefun应用mtimes函数两个GPU数组的每一页,BC

创建两个GPU数组,BC

M = 3;%输出的行数K = 6;%矩阵相乘的内在维度N = 2;%输出的列数P1 = 10;%第一页尺寸的大小P2 = 17;%第二页尺寸的大小P3 = 4;%第三页尺寸的大小P4 = 12;%第四页尺寸的大小=兰德(P3 M, K, P1, 1日,“gpuArray”);B =兰特(K, N, 1, P2、P3, P4,“gpuArray”);

调用pagefun应用mtimes函数这两个数组的每个页面。

C = pagefun (@mtimes, A, B);s =大小(C)% M-by-N-by-P1-by-P2-by-P3-by-P4
s = 3 2 10 17 4 12

这个代码显示了另一个类似的用例pagefun函数。

M = 300;%输出的行数K = 500;%矩阵相乘的内在维度N = 1000;%输出的列数P = 200;%的页面数量一个=兰德(M, K,“gpuArray”);B =兰德(K, N, P,“gpuArray”);C = pagefun (@mtimes, A, B);s =大小(C)%返回M-by-N-by-P
s = 300 1000 200

输入参数

全部折叠

指定的函数应用到每个页面输入,作为处理函数。对于每一个输出参数,有趣的每次都必须返回值相同的类调用它。

支持的值金宝app有趣的包括:

  • 大多数element-wise分布式阵列和gpuArray功能

  • @ctranspose

  • @fliplr

  • @flipud

  • @inv

  • @mldivide

  • @mrdivide

  • @mtimes

  • @rot90

  • @transpose

  • @tril

  • @triu

如果输入分布阵列,所支持的值金宝app有趣的还包括:

  • @lu

  • @qr

  • @norm

输入数组,指定为数组或gpuArray分布。

输入数组,指定为分布式阵列,gpuArrays或数组。至少有一个输入B1,…, Bn,必须是一个数组或gpuArray分发的。使用不支持分布式阵列和gpuArray作为输入。金宝app每个数组存储在CPU内存被转换为一个分布式数组或函数之前gpuArray评估。如果你打算打几个电话pagefun用相同的数组,这是更有效的,首先将这个数组转换成一个分布式阵列或gpuArray。

输出参数

全部折叠

输出数组,作为一个分布式数组或gpuArray返回。

介绍了R2013b