主要内容

mapreduce

为mapreduce和高数组定义并行执行环境

描述

例子

mapreduce定义的执行环境地图还原或高阵列。使用mapreduce函数更改执行环境以使用不同的集群或在串行和并行开发之间切换。

默认的执行环境使用本地MATLAB®会话或并行池(如果您有parallel Computing Toolbox™)。如果您安装了并行计算工具箱,当您使用地图还原函数时,MATLAB会自动启动并行工作池,除非您更改了默认首选项。默认情况下,并行池使用本地worker,通常为机器中的每个核心使用一个worker。如果你关掉自动创建并行池选项,则如果要使用并行资源,则必须显式启动池。请参阅指定您的并行首选项

当使用高数组时,使用mapreduce在创建高数组之前设置执行环境。高数组在构造时被绑定到当前全局执行环境。如果您随后更改了全局执行环境,那么tall数组是无效的,必须重新创建它。

请注意

在MATLAB中,不需要使用指定配置设置mapreduce因为地图还原算法和阵列计算仅在本地MATLAB会话中自动运行。如果您还有并行计算工具箱,则可以使用附加的mapreduce本页列出的用于并行运行的配置选项。如果您有MATLAB编译器™, 然后你可以使用单独的mapreduce用于在部署环境中运行的配置选项。

看到的:mapreduce在MATLAB文档中,或mapreduce(MATLAB编译器)在MATLAB编译器文档中。

mapreduce如果没有输入参数,则创建新的mapreduce执行环境的所有默认值,并将此设置为当前值地图还原或高数组执行环境。您可以使用gcmr以获取当前的mapreducer配置。

  • 如果您有默认首选项(自动创建并行池已启用),并且您尚未打开并行池,则mapreduce使用默认的集群配置文件打开一个池,设置gcmr到基于此池的mapreducer,并返回此mapreducer。

  • 如果已打开并行池,则mapreducegcmr返回到基于当前池的mapreducer,并返回此mapreducer。

  • 如果你禁用了自动创建并行池,你还没有打开一个平行池,那么mapreducegcmr到基于本地MATLAB会话的mapreducer,以及mapreduce返回此mapreducer。

例子

mapreduce (0)指定地图还原数组计算在MATLAB客户端会话中运行,不使用任何并行资源。

mapreduce (普尔奥布指定用于并行执行的并行池地图还原或高数组。普尔奥布是一个平行。游泳池对象。默认池是返回或打开的当前池gcp

mapreduce (hadoopCluster指定一个Hadoop®用于并行执行的集群地图还原或高数组。hadoopCluster是一个parallel.cluster.Hadoop对象。

mapreduce (先生设置全局执行环境地图还原或高数组,使用以前创建的MapReducer对象,先生,如果是ObjectVisibility财产是“上”

先生=映射还原器(___返回指定执行环境的MapReducer对象。您可以定义几个MapReducer对象,通过将一个对象作为输入参数传递给地图还原mapreduce

先生=映射还原器(___、“ObjectVisibility”、“了”)隐藏MapReducer对象的可见性,先生,使用任何前面的语法。使用此语法创建新的MapReducer对象,而不影响全局执行环境地图还原

例子

串行开发,然后使用本地工人或集群

如果要以串行方式开发,而不使用本地工作程序或指定的群集,请输入:

mapreduce (0);
如果你使用mapreduce若要在创建高数组之后更改执行环境,则高数组无效,必须重新创建它。要再次使用本地工作人员或指定的集群,请输入:
mapreduce (gcp);

mapreduce自动创建并行池关掉

如果您已关闭自动创建并行池选项,则如果要使用并行资源,则必须显式启动池。请参阅指定您的并行首选项获取详细信息。

下面的代码展示了如何使用mapreduce没有输入参数来设置本地MATLAB会话的执行环境,然后指定一个本地并行池:

>>mapreducer>>parpool(“本地”,1);
正在使用“本地”配置文件启动并行池(parpool)…连接到1个工作线程。
>>聚集(最小(高(兰特(1000,1)))
使用本地MATLAB会话计算高表达式:在0秒内完成的计算= 5.2238e-04

输入参数

全部崩溃

用于并行执行的池,指定为平行。游泳池对象。

例子:poolobj=gcp

并行执行的Hadoop集群,指定为parallel.cluster.Hadoop对象。

例子:hadoopCluster = parallel.cluster.Hadoop

输出参数

全部崩溃

执行环境地图还原和高大数组,作为MapReducer对象返回。

如果ObjectVisibility的属性先生设置为“上”,然后先生定义所有应用程序的默认执行环境地图还原算法和阵列计算。如果ObjectVisibility财产是“关”,你可以通过先生的输入参数地图还原为特定调用显式指定执行环境。

您可以定义几个MapReducer对象,通过将一个对象作为输入参数传递给地图还原mapreduce

提示

使用高数组开发算法的好处之一是,您只需要编写一次代码。你可以在本地开发你的代码,然后使用mapreduce以扩展并利用并行计算工具箱提供的功能,MATLAB并行服务器™,或MATLAB编译器,而不需要重写算法。

R2014b中引入