MATLAB 和 Simulink 培训

MATLAB 代码加速和并行化

课程详细信息

本课程为期两天,包含多种 MATLAB® 代码加速运行的技术。使用诸如预分配和向量化的技术,您可以找出计算瓶颈并解决该问题。此外,您将使用 MATLAB Coder™将 MATLAB 代码编译为 MEX 文件。另外,您还可以使用 Parallel Computing Toolbox™ 在多核计算机中并行处理 for 循环,您也可借助 MATLAB Distributed Computing Server™ 在多台计算机做进一步处理。本课程将讨论这些概念的相互作用。若您进行长时间仿真工作,本课程的示例和练习将会让你受益良多。课程将探讨数据分析、可视化、建模和编程等主题。

具体包括:

  • 提高核心 MATLAB 性能
  • 生成 MEX 文件
  • 计算并行化
  • 负载均衡
  • 使用集群
  • GPU 计算

Day 1 of 2


改善性能

Objective: 分析代码性能,使用技术加速 MATLAB。

  • 发现瓶颈
  • 数组预分配
  • 多种向量化操作
  • 算法重写

生成 MEX 文件

Objective: 从 MATLAB 代码生成编译代码文件以获得更好的性能。

  • MATLAB Coder 概述和工作流程
  • 生成并验证 MEX 文件
  • 调用不支持的函数
  • 调整 MEX 文件生成设置

计算并行化

Objective: 使用多核心进行代码并行执行。

  • 打开其它 MATLAB 进程
  • 并行运行 for 循环
  • 评估加速

Day 2 of 2


for 循环并行化

Objective: 讨论 for 循环并行化的细节和 for 循环到 parfor 循环的转化应用技术。

  • for 循环并行化的需求
  • for 循环并行化
  • 检索中间结果

负载均衡

Objective: 将计算负载转移到另一个 MATLAB 进程以便使用 MATLAB 同时处理其它任务。这也是使用集群的准备步骤。

  • 批量处理
  • 创建批量工作
  • 检索结果
  • 使用 Job Monitor

使用集群

Objective: 使用多台计算机加速计算和实现广泛仿真。

  • 本地和远程集群
  • 动态许可证
  • 集群发现和连接
  • 文件访问

GPU 计算

Objective: 在 GPU 中运行 MATLAB 代码。

  • GPU 架构和处理简介
  • 适用于 GPU 处理的应用程序
  • 在 GPU 中调用 MATLAB 函数
  • 使用 GPU Coder生成 CUDA® MEX 文件
  • 使用现有的 CUDA 代码

难度: 中级

课程要求:

  • MATLAB 基础

持续时间: 2 天

语言: English, Français, 日本語, 한국어