选择批处理函数
批处理工作流允许您将工作卸载到计算集群并释放您的 MATLAB® 客户端端来执行其他任务,或提交长时间运行的代码以供稍后执行。当您将工作卸载到远程计算集群时,您可以在作业处理时关闭 MATLAB 客户端会话,然后稍后从批处理作业中或在新的客户端会话中检索信息。
为了开发和测试您的代码,您可以将工作卸载到客户端计算机上的本地集群。如果您关闭 MATLAB 会话,任何使用本地集群的批处理作业也会立即停止。
批处理并行作业类型
Parallel Computing Toolbox™ 将您想要离线执行的 MATLAB 代码打包成作业和任务。要了解有关 Parallel Computing Toolbox 如何运行作业的更多信息,请参阅 并行计算软件如何运行作业。
您可以在批处理工作流中运行两种类型的作业:
独立作业 - 由一个工作单元独立地执行任务,工作单元之间无通信。
通常,如果您的代码不需要并行池,那么您可以使用独立作业。
通信作业 - 一个工作单元充当客户端,其他工作单元运行非交互式池。工作单元在执行任务的过程中可以互相通信。
通常,如果您的代码调用需要并行池的函数(例如
parfor、parfeval、spmd或distributed),那么它就是一项通信作业。
Parallel Computing Toolbox 提供以下函数来在批处理中运行您的 MATLAB 代码:
提示
为了以更简单的函数运行通信作业,请使用 batch 函数而不是 createCommunicatingJob 函数。
下图显示了何时使用 batch 和 createJob 函数。

选择批处理函数
要确定哪种批处理函数适合您,请查阅此表。
| 示例应用情形 | 函数与方法 | 示例 |
|---|---|---|
您想在集群后台执行 MATLAB 脚本。 | 使用 | |
您想要使用现场或云集群上的非交互式池来运行包含以下一项或多项的代码:
| 将 | |
您有多个独立的 MATLAB 函数调用需要在集群后台运行。每个函数不需要并行的工作单元池。 | 使用 您可以为每个函数调用创建一个独立的任务。当一项任务完成后,工作单元就会转到列表中的下一个任务,而无需等待其他任务完成。您还可以访问已完成任务的中间结果。 |
另请参阅
batch | createJob | createCommunicatingJob | createTask