| Contents | Index |
This table summarizes what is new in Version 5.2 (R2011b):
| New Features and Changes | Version Compatibility Considerations | Fixed Bugs and Known Problems |
|---|---|---|
Yes | Yes — Details labeled as Compatibility Considerations, below. See also Summary. | Bug
Reports |
The Job Monitor is a tool that lets you track the jobs you have submitted to a cluster. It displays the jobs for the scheduler determined by your selection of a parallel configuration. Open the Job Monitor from the MATLAB desktop by selecting Parallel > Job Monitor.

Right-click a job in the list to select a command from the context menu for that job:

For more information about the Job Monitor and its capabilities, see Job Monitor.
From the Current Folder browser, you can run a MATLAB script as a batch job by browsing to the file's folder, right-clicking the file, and selecting Run Script as Batch Job. The batch job runs on the cluster identified by the current default parallel configuration. The following figure shows the menu option to run the script from the file script1.m:

You can now run up to 12 local workers on your MATLAB client machine. If you do not specify the number of local workers in a command or configuration, the default number of local workers is determined by the value of the local scheduler's ClusterSize property, which by default equals the number of computational cores on the client machine.
This version of Parallel Computing Toolbox GPU functionality supports only the latest NVIDIA CUDA device driver.
Compatibility Considerations. Earlier versions of the toolbox supported earlier versions of CUDA device driver. Always make sure you have the latest CUDA device driver.
MATLAB Compiler™ generated standalone executables and components now support applications that use the GPU.
You can now directly create arrays of random numbers on the GPU using these new static methods for GPUArray objects:
parallel.gpu.GPUArray.rand parallel.gpu.GPUArray.randi parallel.gpu.GPUArray.randn
The following functions set the GPU random number generator seed and stream:
parallel.gpu.rng parallel.gpu.RandStream
Also, arrayfun called with GPUArray data now supports rand, randi, and randn. For more information about using arrayfun to generate random matrices on the GPU, see Generating Random Numbers on the GPU.
The following functions now support GPUArray data:
chol diff eig find isfinite isinf | isnan lu max min mldivide | norm not repmat sort svd |
mldivide supports complex arrays. It also supports overdetermined matrices (with more rows than columns) when the second input argument is a column vector (has only one column).
eig supports only symmetric matrices.
max and min return only one output argument; they do not return an index vector.
The following functions are not methods of the GPUArray class, but they do work with GPUArray data:
angle beta betaln fliplr flipud | flipdim fftshift ifftshift kron | mean perms squeeze rot90 |
The default display of GPUArray variables now shows the array contents. In previous releases, the display showed some of the object properties, but not the contents. For example, the new enhanced display looks like this:
M = gpuArray(magic(3))
M =
8 1 6
3 5 7
4 9 2
To see that M is a GPUArray, use the whos or class function.
GPU support is extended to include the following MATLAB code in functions called by arrayfun to run on the GPU:
rand randi randn xor
Also, the handle passed to arrayfun can reference a simple function, a subfunction, a nested function, or an anonymous function. The function passed to arrayfun can call any number of its subfunctions. The only restriction is that when running on the GPU, nested and anonymous functions do not have access to variables in the parent function workspace. For more information on function structure and relationships, see Types of Functions.
The following functions are enhanced to support distributed arrays, supporting all forms of codistributor (1-D and 2DBC):
inv meshgrid ndgrid sort
The following functions can now directly construct codistributed arrays:
codistributed.linspace(m, n, ..., codist) codistributed.logspace(m, n, ..., codist)
For R2011b, error and warning message identifiers have changed in Parallel Computing Toolbox.
If you have scripts or functions that use message identifiers that changed, you must update the code to use the new identifiers. Typically, message identifiers are used to turn off specific warning messages, or in code that uses a try/catch statement and performs an action based on a specific error identifier.
For example, the 'distcomp:old:ID' identifier has changed to 'parallel:similar:ID'. If your code checks for 'distcomp:old:ID', you must update it to check for 'parallel:similar:ID' instead.
To determine the identifier for a warning, run the following command just after you see the warning:
[MSG,MSGID] = lastwarn;
This command saves the message identifier to the variable MSGID.
To determine the identifier for an error, run the following commands just after you see the error:
exception = MException.last; MSGID = exception.identifier;
Tip Warning messages indicate a potential issue with your code. While you can turn off a warning, a suggested alternative is to change your code so that it runs warning-free. |
If there is an error during task execution, the task Error property now contains the non-empty MException object that is thrown. If there was no error during task execution, the Error property is empty.
The identifier and message properties of this object are now the same as the task's ErrorIdentifier and ErrorMessage properties, respectively. For more information about these properties, see the Error, ErrorIdentifier, and ErrorMessage reference pages.
In past releases, when there was no error, the Error property contained an MException object with empty data fields, generated by MException('', ''). Now to determine if a task is error-free, you can query the Error property itself to see if it is empty:
didTaskError = ~isempty(t.Error)
where t is the task object you are examining.
![]() | Version 6.0 (R2012a) Parallel Computing Toolbox Software | Version 5.1 (R2011a) Parallel Computing Toolbox Software | ![]() |

See how to solve large problems with minimal effort and reduce simulation time.
Get free kit| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |