distributed
从客户端创建并访问分布式数组的元素
说明
客户端上的分布式数组表示在并行池中的工作单元之间进行分区的数组。您可以将整个数组作为单个实体进行操作;但是,工作单元仅对其所在的数组部分进行操作,并在必要时自动在它们之间传输数据。分布式数组在索引和操作其元素的方式上类似于普通的 MATLAB® 数组,但其元素均不存在于客户端上。您在 spmd
语句内创建的共存分布式数组可作为分布式数组从客户端访问。
创建对象
使用 distributed
函数或使用数组创建函数(如 ones
或 zeros
)的 "distributed"
选项。有关直接在工作单元上创建分布式数组的数组创建函数的列表,请参阅 替代功能。
描述
输入参量
输出参量
对象函数
几个 MATLAB 工具箱包含支持分布式数组的函数。有关所有支持分布式数组的 MathWorks® 产品中的函数列表,请参阅所有函数列表(分布式数组)。
多个对象函数可让您检查分布式数组的特征。大多数行为类似于同名的 MATLAB 函数。
isdistributed | 对于分布式数组而言为 true |
isreal | 确定数组是否使用复数存储 |
isUnderlyingType | 确定输入是否有指定的基础数据类型 |
length | 最大数组维度的长度 |
ndims | 数组维度数目 |
size | 数组大小 |
underlyingType | 确定数组行为的基础数据的类型 |
示例
提示
在现有并行池的工作单元上创建一个分布式数组。如果不存在池,
distributed
将启动一个新的并行池,除非在并行设置中禁用了池的自动启动。如果没有并行池并且distributed
无法启动并行池,则 MATLAB 会将结果作为客户端工作区中的非分布式数组返回。
替代功能
下表列出了可用的在工作单元上直接创建 distributed
数组的 MATLAB 函数。有关更多信息,请参阅函数参考页的扩展功能部分。
eye | distributed.cell |
false | distributed. colon |
Inf | distributed. linspace |
NaN | distributed. logspace |
ones | distributed.spalloc |
true | distributed.speye |
zeros | distributed.sprand |
rand | distributed.sprandn |
randi | |
randn |