mapreducer - Define execution environment for mapreduce or tall arrays - MATLAB (original) (raw)

Define execution environment for mapreduce or tall arrays

Syntax

Description

mapreducer, with no arguments, sets the global execution environment to be the default: a parallel pool if you have Parallel Computing Toolbox™ available, or else the local MATLAB® session. mapreducer is a configuration function that changes how MATLAB executes mapreduce algorithms and tall array calculations. Use this function to set, change, or store the execution environment to leverage Parallel Computing Toolbox, MATLAB Parallel Server™, or MATLAB Compiler™. If you have Parallel Computing Toolbox installed, then when you use the tall ormapreduce functions MATLAB automatically starts a parallel pool of workers (unless you have changed the default preferences).

Note

If no toolboxes are available, then mapreduce algorithms and tall array calculations automatically run using the local MATLAB session, and it is unnecessary to specify configuration settings using mapreducer to use these features. However, if you have Parallel Computing Toolbox, MATLAB Parallel Server, or MATLAB Compiler, then additional mapreducer configuration options are available for running in parallel or deployed environments.

For more information, see mapreducer (Parallel Computing Toolbox) in the Parallel Computing Toolbox documentation, or mapreducer (MATLAB Compiler) in theMATLAB Compiler documentation.

example

mapreducer(0) sets the global execution environment to be the local MATLAB session.

mapreducer([mr](#buf12b7-mr)) sets the global execution environment using a previously created MapReducer object, mr.

[mr](#buf12b7-mr) = mapreducer(___) also returns a MapReducer object using any of the previous syntaxes. You can use mr as a fourth input argument to mapreduce when you want to explicitly specify the execution environment.

[mr](#buf12b7-mr) = mapreducer(___,'ObjectVisibility','Off') toggles the visibility of MapReducer object mr. Use this syntax to create new MapReducer objects without affecting the global execution environment.

Examples

collapse all

Switch Between Execution Environments

The command

automatically starts a parallel pool if Parallel Computing Toolbox is available. Otherwise, the execution environment is set to be the local MATLAB session.

You can force MATLAB to use the local session with the command

To query the current global execution environment, use the command

Output Arguments

collapse all

mr — Execution environment

object

Execution environment, returned as a MapReducer object.

If the ObjectVisibility property of mr is set to 'On' (the default), then mr defines the execution environment for all mapreduce algorithms and tall array calculations. You can optionally pass mr to the mapreduce function to explicitly specify the execution environment, even if its ObjectVisibility property is set to 'Off'.

Tips

Extended Capabilities

Automatic Parallel Support

Accelerate code by automatically running computation in parallel using Parallel Computing Toolbox™.

If you have Parallel Computing Toolbox installed, when you use mapreducer, MATLAB automatically opens a parallel pool of workers on your local machine. Control parallel behavior with the parallel preferences, including scaling up to a cluster.

For details, see Run mapreduce on a Parallel Pool (Parallel Computing Toolbox) or Use Tall Arrays on a Parallel Pool (Parallel Computing Toolbox). For more general information about parallel computing, see Run MATLAB Functions with Automatic Parallel Support (Parallel Computing Toolbox).

Version History

Introduced in R2014b