GPU编码器

GPU编码器

为NVIDIA GPU生成CUDA代码

开始:

生成快速、灵活的CUDA代码

生成优化的CUDA代码。免费部署代码。

部署算法免版税

在流行的NVIDIA GPU上编译并运行生成的代码,从桌面系统到数据中心再到嵌入式硬件。生成的代码是免版税的,可以将其免费部署到商业应用程序中。

探索图库(2张图片)

空中客车原型自动检测NVIDIA Jetson TX2上的缺陷。

从支持的工具箱和函数生成代码万博1manbetx

GPU编码器从广泛的MATLAB语言功能生成代码,设计工程师使用这些功能开发算法,作为更大系统的组件。这包括来自MATLAB和配套工具箱的数百个运算符和函数。

MATLAB语言和工具箱支持代码生成。万博1manbetx

合并遗留代码

使用遗留代码集成功能将可信或高度优化的CUDA代码合并到MATLAB算法中,以便在MATLAB中进行测试。然后从生成的代码中调用相同的CUDA代码。

将现有CUDA代码合并到生成的代码中。

从Simulink模型生成CUDA代码万博1manbetx

在Simulink中创建模型并生成万博1manbetx优化的CUDA代码。

为NVIDIA GPU运行模拟并生成优化代码

与Simulink编码器一起使万博1manbetx用时™, GPU编码器在NVIDIA GPU上加速Simulink模型中MATLAB功能块的计算密集部分。然后,您可以从Simulink模型生成优化的CUDA代码,并将其部署到NVIDIA GPU目标。

万博1manbetx在GPU上运行的Sobel边缘检测器的Simulink模型。

部署端到端深度学习算法

使用深度学习工具箱中经过培训的各种深度学习网络(包括ResNet-50、SegNet和LSTM)™ 在Simulink模型中,并部署到NVIDIA GPU。生成用于预处理和后处理的代码,以及经过培训的深度学习网络,以部署完整的算法。万博1manbetx

记录信号、调整参数并以数字方式验证代码行为

当与Simulink编码器一起万博1manbetx使用时,GPU编码器使您能够使用外部模式模拟实时记录信号和调整参数。使用嵌入式编码器和GPU编码器运行软件在环测试和处理器在环测试,以数字方式验证生成的代码与模拟行为匹配。

从深度学习网络生成CUDA代码

使用深度学习工具箱部署经过培训的深度学习网络。

部署端到端深度学习算法

部署各种经过培训的深度学习网络(包括ResNet-50、SegNet和LSTM)从深度学习工具箱到NVIDIA GPU。使用预定义的深度学习层或为特定应用程序定义自定义层。生成预处理和后处理代码以及经过培训的深度学习网络,以部署完整的算法。

生成用于推理的优化代码

与其他深度学习解决方案相比,GPU编码器生成的代码占用空间更小,因为它只生成使用特定算法运行推理所需的代码。生成的代码调用优化的库,包括TensorRT和cuDNN。万博 尤文图斯

使用cuDNN在Titan V GPU上使用VGG-16进行单图像推断。

使用TensorRT进一步优化

生成与NVIDIA TensorRT(高性能深度学习推理优化器和运行时)集成的代码。与标准FP32数据类型相比,使用INT8或FP16数据类型可获得额外的性能提升。

使用TensorRT和INT8数据类型提高执行速度。

深度学习量化

量化您的深度学习网络,以减少内存使用并提高推理性能。使用Deep Network Quantizer应用程序分析并可视化提高性能和推理准确性之间的权衡。

优化生成的代码

GPU编码器自动优化生成的代码。使用设计模式进一步提高性能。

最小化CPU-GPU内存传输并优化内存使用

GPU编码器自动分析、识别和划分MATLAB代码段,以便在CPU或GPU上运行。它还最小化了CPU和GPU之间的数据拷贝数。使用分析工具识别其他潜在的瓶颈。

确定潜在瓶颈的概要报告。

调用优化的库

使用GPU编码器生成的代码调用优化的NVIDIA CUDA库,包括TensorRT、cuDNN、cuSolver、Cuft、cuBLAS和推力。从MATLAB工具箱函数生成的代码尽可能映射到优化库。

在优化的Cuft CUDA库中生成代码调用函数。

使用设计模式进一步加速

模具处理等设计模式使用共享内存来提高内存带宽。当使用某些函数(如卷积)时,它们会自动应用。您还可以使用特定的pragma手动调用它们。

模具加工设计模式。

硬件上的原型

通过自动将算法转换为CUDA代码,快速进入硬件。

NVIDIA Jetson和驱动平台上的原型

使用针对NVIDIA GPU的GPU编码器支持包,在NVIDIA Jetson和驱动平台上自动交叉编译和部署生成的代码。万博1manbetx

英伟达捷通平台的原型设计。

从MATLAB访问外围设备和传感器并生成代码

远程通信与英伟达目标从MATLAB获取数据从网络摄像头和其他支持的外围设备,用于早期原型。将您的算法与外围接口代码一起部署到板上,以便独立执行。万博1manbetx

从MATLAB访问外设和传感器并生成代码。

从原型到生产

使用GPU编码器和嵌入式编码器,以交互方式跟踪MATLAB代码与生成的CUDA代码。使用软件在环(SIL)和处理器在环(PIL)测试验证生成代码在硬件上运行的数值行为。

使用GPU编码器和嵌入式编码器的交互式跟踪报告。

加速算法

生成CUDA代码并编译以在MATLAB和Simulink中使用。万博1manbetx

基于MATLAB的gpu加速算法

将生成的CUDA代码作为MEX函数从MATLAB代码中调用,以加快执行速度,但性能会因MATLAB代码的性质而异。配置文件生成的MEX函数,以确定瓶颈并集中优化工作。

使用NVIDIA GP万博1manbetxU加速Simulink模拟

当与Simulink编码器一起万博1manbetx使用时,GPU编码器可加速NVIDIA GPU上Simulink模型中MATLAB功能块的计算密集型部分。