课程详细信息
本课程为期两天,包含多种 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 代码