parpool

创建群集并行池

描述

parpool开始使用默认的簇轮廓工人的并行池。在默认的喜好,MATLAB®开始时为每个物理CPU内核一个工人,到工人的首选号码在本地机器上池。有关并行首选项的详细信息,请参阅指定并行首

在一般情况下,是由您的喜好平行和默认的配置文件指定的池大小。parpool创建了默认的簇上池的NumWorkers在范围内[1,preferredNumWorkers]运行并行语言功能。preferredNumWorkers在你的喜好平行定义的值。对于可能会影响您的池大小的因素,请参阅池大小和群集选择

parpool通过对工人的池创建一个特殊的职业,和MATLAB客户端连接到并行池能够在MATLAB并行语言功能的全部功能。并行语言功能包括PARFORparfevalparfevalOnAllSPMD分散式。如果可能的话,对工人工作文件夹设置为匹配的MATLAB客户端会话。

parpool(poolsize创建并返回与工人的指定编号的游泳池。poolsize可以是正整数或指定为整数的2元素向量的范围内。如果poolsize是一个范围,所得到的池具有尺寸尽可能大在要求的范围内。

指定poolsize覆盖职工人数的偏好或配置文件中指定,并开始正是许多工人池,即使它必须等待他们可用。大多数集群有他们可以开始工作人员的最大数量。如果配置文件指定一个MATLAB作业调度集群,parpool从那些已经运行,并提供根据该MATLAB作业调度程序中保留其员工。如果配置文件指定一个本地或第三方调度,parpool指示调度启动工人池。

parpool(资源要么parpool(资源poolsize开始由指定的资源池工人资源

parpool(___名称,值启动池时,适用于某些属性指定的值。

poolobj= parpool(___回报parallel.Pool对象来表示集群上的池中的客户端的工作区。您可以使用池对象以编程方式删除池或访问其属性。用删除(池)关闭并行池。

例子

全部收缩

使用默认的配置文件来定义工人数量开始并行池。在默认的喜好,默认池是在本地机器上。

parpool

您可以在本地计算机上创建不同类型的并行环境池。

  • 启动过程中工人的并行池。

    parpool('本地'
  • 启动线程的工人并行池。

    parpool(“线程”

富勒在并行环境的详细信息,请参阅选择基于线程和进程为基础的环境之间

开始使用配置文件16名工人的并行池称为myProf

parpool('myProf',16)

创建代表由默认的配置文件中标识的簇的对象,并使用该群集对象开始并行池。该池的大小是由默认配置文件决定。

C = parcluster parpool(c)中

开始使用默认配置并行池和两个代码文件传递给工人。

parpool('附加的文件'{'mod1.m''mod2.m'})

创建默认配置并行池,后来删除池。

poolobj = parpool;删除(poolobj)

发现工人在当前并行池的数量。

poolobj = GCP('nocreate的');%如果没有游泳池,没有创造新的。如果的isEmpty(poolobj)poolsize = 0;其他poolsize = poolobj.NumWorkers结束

输入参数

全部收缩

并行池的大小,指定为正整数或指定为整数的2元素向量的范围内。如果poolsize是一个范围,所得到的池具有尺寸尽可能大在要求的范围内。设置在平行的喜好或平行轮廓工人的默认首选号码。

例:parpool( '本地',2)

数据类型:||INT8|INT16|INT32|Int64的|UINT8|UINT16|UINT32|UINT64

资源开始在游泳池边,指定为'本地'“线程”在集群文件名称或群集对象。

例:parpool( '本地')

例:parpool( '线程')

例:parpool( 'myClusterProfile',16)

例:C = parcluster;parpool(c)中

数据类型:烧焦||parallel.Cluster

名称 - 值对参数

指定可选的用逗号分隔的对名称,值参数。名称是参数的名称和是对应的值。名称必须出现引号内。您可以按照任何顺序指定多个名称和值对参数名1,值1,...,NameN,值N

例:'AttachedFiles',{ 'myFun.m'}

文件附加到池,指定为字符向量,字符串或字符串数​​组,或字符向量的单元阵列。

有了这个说法对,parpool启动并行池并通过池中的识别的文件给工人。此处指定的文件附加到附加的文件在适用的并行配置文件指定的属性,形成附加的文件的完整列表。该'附加的文件'属性名称是区分大小写的,并且必须按所显示出现。

例:{ 'myFun.m', 'myFun2.m'}

数据类型:烧焦|细胞

一个逻辑值(真正要么),其控制客户端的路径上用户添加的条目是否被添加到每个工人的路径在启动时。默认 'AutoAddClientPath' 设定为真正

数据类型:合乎逻辑

环境变量的名称来从所述客户端会话给工人,指定为字符向量,字符串或字符串数​​组,或字符向量的单元阵列复制。此处指定的名称被附加到'环境变量'在适用的并行配置文件指定的属性,形成环境变量的完整列表。这不是一组列出的任何变量不会复制到工人。这些环境变量用于并行池的持续时间上的工人设置。

数据类型:烧焦|细胞

指示如果池能够支持SPMD,指定为逻辑。金宝app您只能在本地或MATLAB作业调金宝app度集群禁用支持。因为PARFOR迭代不涉及相互工作的沟通,禁止SPMD支持这种方式允许并行池保持评估金宝appPARFOR-loop循环执行过程中,即使一个或更多的工人中止。

数据类型:合乎逻辑

时间(分钟)后,该池关闭要是游手好闲,指定为一个整数大于零。如果没有工人运行的代码池处于闲置状态。默认'空闲超时'是一样的平行的喜好值。有关并行首选项的详细信息,请参阅指定并行首

例:池= parpool( '的IdleTimeout',120)

输出参数

全部收缩

访问从客户端并行库,返回为parallel.Pool目的。

提示

  • 在桌面上显示的左下角池状态指示灯客户端会话连接池和游泳池的状态。点击支持池操作的菜单图标。金宝app

    随着池中运行:由于没有池运行:

  • 如果您设置平行的喜好来自动创建在必要时并行池,你并不需要显式调用parpool命令。你可能会明确创建一个池来控制,当你招致设置它的开销时间,所以池已经准备好随后的并行语言结构。

  • 删除(poolobj)关闭并行池。如果没有一个平行的泳池,SPMDPARFOR运行在客户端的单个线程,除非你的平行首选项设置为自动启动并行池他们。

  • 当您使用MATLAB编辑器来更新文件附加到一个平行池中的客户端上,这些更新自动传播到池中的工人。(这个自动更新不适用的Simulink金宝app®模型文件。要更新的模型文件传播到工人,使用updateAttachedFiles功能。)

  • 如果可能的话,对工人的工作文件夹初始设置为匹配的MATLAB客户端会话。随后,下面的命令在客户端命令窗口也执行在池中的所有工人进入:

    这种行为可以让你将工作文件夹和所有工人的命令搜索路径,以便后续游泳池等活动PARFOR-loops在适当的上下文中执行。

    当改变文件夹或将与路径光盘要么让addpath与Windows客户端®操作系统,发送到工人的价值是,如果可能的文件夹的UNC路径。对于Linux客户端®操作系统,它是绝对的文件夹位置。

    如果这些命令不能在客户机上运行,​​它不是对工人要么执行。例如,如果让addpath指定文件夹的客户端不能访问时,让addpath命令不上工人执行。但是,如果工作文件夹可以在客户端进行设置,但不能设置任何工人按规定,你没有得到返回给客户端命令窗口错误消息。

    要小心在混合平台环境中的行为的微小差异,其中客户端是不一样的平台为工人,地方或从客户端映射的文件夹是不以同样的方式提供给工人,或者文件夹在非共享的文件系统。例如,如果你有一个MATLAB客户端上运行的微软®Windows操作系统,而MATLAB的工人都在Linux操作系统上,同样的理由来运行让addpath不能在两个工作。在这种情况下,你可以使用函数pctRunOnAll以确保命令对所有的工人运行。

    客户机和工人之间的另一个区别是,任何让addpath论据是部分matlabroot文件夹未设置上的工人。该假设是MATLAB的安装基础已经包含在了工人的路径。对于规则让addpath就在游泳池工人:

    • 的子文件夹matlabroot文件夹不会发送到工人。

    • 一个第一次出现之前出现的任何文件夹matlabroot文件夹添加到对工人的路径之上。

    • 一个第一次出现后出现的任何文件夹matlabroot文件夹中后,加入matlabroot集团对工人的路径文件夹。

    例如,假设matlabroot在客户端C:\应用程序\ MATLAB \。以开放的并行池,执行以下命令设置客户端和所有工人的路径:

    让addpath('P1''P2''C:\应用\ MATLAB \ T3''C:\应用\ MATLAB \ T4''P5''C:\应用程序\ MATLAB \ T6''P7''P8');

    因为T3T4T6是的子文件夹matlabroot,他们没有设置对工人的路径。因此,对工人,此命令产生的路径的相关部分是:

    P1 P2 <工人原有matlabroot文件夹...> P5 P7 P8
  • 如果您正在使用苹果或Linux,并看到在大规模并行池创建问题,请参阅推荐系统限制为Macintosh和Linux

介绍了在R2013b