GPU Coder

 

GPU Coder

为 NVIDIA GPU 生成 CUDA 代码

显示生成的 CUDA 代码的代码生成报告。

从 MATLAB 生成 CUDA 代码

编译并在常见的 NVIDIA GPU 上运行从 MATLAB 算法生成的 CUDA 代码,无论是桌面端 RTX 卡、数据中心还是嵌入式 Jetson 和 DRIVE 平台。免费向您的客户部署免版权费的生成代码。

车道和车辆检测器的 Simulink 模型。

从 Simulink 生成 CUDA 代码

使用 Simulink Coder 和 GPU Coder 从您的 Simulink 模型生成 CUDA 代码,并将其部署到 NVIDIA GPU 上。使用 NVIDIA GPU 加速 Simulink 仿真的计算密集部分。

NVIDIA Jetson 平台的照片。

部署到 NVIDIA Jetson 和 DRIVE

GPU Coder 自动将生成的代码部署到 NVIDIA Jetson 和 DRIVE 平台上。访问外围设备、采集传感器数据并将您的算法连同外设接口代码一起部署到板上以便独立执行。

两个道路交通相机视图,它们是 Simulink 中车辆和车道检测应用程序的一部分。

为深度学习生成代码

将各种预定义或自定义的深度学习网络部署到 NVIDIA GPU。除了经过训练的深度学习网络,您还可以同时为预处理和后处理生成代码,以部署完整的算法。

标题为“ResNet-50 推断”的条形图显示随着 FP32 和 INT8 数据类型的使用,每秒图像数在不断增加。

优化生成的代码

GPU Coder 自动应用内存管理、内核融合和自动调节等优化。通过生成 INT8 或 bfloat16 代码减少内存占用量。通过与 TensorRT 集成进一步提升性能。

来自 GPU 性能分析工具的报告,显示生成代码的探查信息。

探查和分析生成的代码

使用 GPU 性能分析器探查生成的 CUDA 代码,并确定进一步改进执行速度和内存占用量的机会。

示意图:模板处理设计模式在概念层面的工作原理。

使用设计模式提高性能

设计模式(包括模板处理和缩减)在可用时会自动应用,以提高生成代码的性能。您还可以使用特定编译器指令手动调用它们。

代码生成报告:显示 MATLAB 代码和生成的 CUDA 代码之间的交互式双向可追溯性。

记录信号、调节参数并验证代码行为

使用 GPU Coder 和 Simulink Coder 来记录信号并实时调节参数。添加 Embedded Coder 以在 MATLAB 和生成的 CUDA 代码之间进行交互式追溯,使用 SIL 测试对生成的 CUDA 代码的行为进行数值验证。

采用 GPU Coder 和 NVIDIA GPU 加速的 ECG 预测算法的 Simulink 模型。

加速 MATLAB 和 Simulink 仿真

在 MATLAB 代码中以 MEX 函数形式调用生成的 CUDA 代码以加速执行。结合使用 Simulink Coder 和 GPU Coder 以在 NVIDIA GPU 上加速 Simulink 模型中 MATLAB Function 模块的计算密集部分。

“从数据注释到选择、训练、测试和微调深度学习模型,MATLAB 拥有我们所需的全部工具。尽管我们的 GPU 使用经验有限,GPU Coder 仍然帮助我们很快地将实现部署到了 NVIDIA GPU。”

有兴趣了解 GPU Coder?