利用 parallel computing toolbox™,可以使用多核处理器、gpu 和计算机集群来解决计算问题和数据密集型问题。利用并行 for 循环、特殊数组类型和并行化数值算法等高级别构造,无需进行 cuda 或 mpi 编程即可对 matlab® 应用程序进行并行化。 通过该工具箱可以使用 matlab 和其他工具箱中支持并行的函数。你可以将该工具箱与 simulink® 配合使用,并行运行一个模型的多个仿真。程序和模型可以在交互模式和批处理模式下运行。
该工具箱通过在本地运行的 worker(matlab 计算引擎)上执行应用程序,允许你充分利用多核台式机的处理能力。无需更改代码,即可在集群或云上运行同一个应用程序(使用 matlab parallel server™)。还可以将该工具箱与 matlab parallel server 结合使用,以执行由于太大而无法装入单台机器内存的矩阵计算。
扩展 matlab 应用程序
parallel computing toolbox 使应用程序可以发挥配备多核处理器和 gpu 的计算机的优势。
使用多核计算机加速 matlab
使用并行 for 循环 (parfor
) 可在多核 cpu 上并行运行独立迭代,以解决诸如参数扫描、优化和 monte carlo 仿真等问题。parfor 会自动创建并行池并管理文件依赖性,让你可以专注于自己的工作。多个 matlab 和 simulink 产品中的主要函数包含支持并行的函数。借助 parallel computing toolbox,这些函数可以将计算分布到可用的计算资源上可以通过交互方式和批处理方式执行并行应用程序。
使用 gpu 加速 matlab
parallel computing toolbox 可让你借助 gpuarray
直接从 matlab 使用 nvidia® gpu。有 500 多个 matlab 函数可在 nvidia gpu 上自动运行,包括 fft
、元素级运算和几种线性代数运算,如 lu
和 mldivide
(也称作反斜杠运算符 (\))。多个 matlab 和 simulink 产品(如 deep learning toolbox)中的主要函数都包含支持 gpu 的函数。无需编写任何额外代码即可使用 gpu,从而可让你专注于应用程序本身而不是性能调优。高级开发人员可以直接从 matlab 调用自己的 cuda 代码。可以利用台式机、计算集群和云环境上的多个 gpu。
处理大数据
parallel computing toolbox 扩展了 matlab 中内置的 tall
数组和 mapreduce
功能,让你能够在本地 worker 上运行,以提高性能。随后你可以在传统集群或 apache spark™ 和 hadoop® 集群上使用 matlab parallel server 将 tall
数组和 mapreduce
扩展到额外资源。还可以在台式机上用distributed array 进行原型设计,然后使用 matlab parallel server 扩展到额外资源。
加速 simulink 仿真
借助 parallel computing toolbox,可以轻松地在多个 cpu 核心上同时运行多个 simulink 仿真。可在 monte carlo 分析、参数扫描、模型测试、实验设计和模型优化中轻松地使用不同输入或参数设置来运行同一模型。
并行运行多个仿真
使用 parsim
函数可并行运行仿真。该函数可将多个仿真分布到多核 cpu 以加快整体仿真速度。parsim
还可自动创建并行池、标识文件依赖性并管理构建工件,让你可以专注于设计工作。你可以通过交互方式或批处理方式执行并行仿真。
仿真管理器
simulation manager 与 parsim
集成,可以用于在一个窗口中监控和可视化多个仿真。可以选择单个仿真并查看其规范,并使用 simulation data inspector 检查仿真结果。还可以方便地运行诊断任务或中止仿真。
利用支持并行的 simulink 功能
除了使用 parsim
和 batchsim
函数运行 simulink 仿真之外,还有许多的 simulink 产品(包括 simulink design optimization™、reinforcement learning toolbox™、simulink test™ 和 simulink coverage™ )提供并行功能,让你无需编写任何代码便可并行运行仿真。
集群和云中的并行计算
可在台式机或虚拟台式机上对应用程序进行原型设计和调试并扩展到集群或云,无需重新编码。交互式开发,并通过批处理工作流程移至生产环境。
在公共云和私有云上运行 matlab 桌面。
利用多个按需的高性能 cpu 和 gpu 机器来加速分析和仿真。在 amazon web services® (aws) 环境或 microsoft azure® 中,直接在虚拟机上运行 matlab 和 simulink。
还可以通过在 nvidia gpu cloud 或 nvidia dgx 上的 matlab deep learning container 中训练神经网络,来加速深度学习应用程序。
借助 matlab parallel server 扩展到集群
在桌面上开发原型,然后扩展到计算机集群或云,无需重新编码。只需更改集群配置文件,便可从你的桌面访问不同的执行环境。