Advertisement

TensorRT:一个用于NVIDIA GPU和深度学习加速器的高性能推理C++库

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:ZIP


简介:
TensorRT是由NVIDIA开发的一款高性能C++库,专为在GPU及深度学习加速器上进行高效的深度学习模型推理而设计。 该存储库包含NVIDIA TensorRT的开源软件(OSS)组件。这些组件包括TensorRT插件和解析器(如Caffe和ONNX),以及演示如何使用TensorRT平台及其功能的应用示例。这些开源软件是TensorRT通用可用性版本中的部分内容,具有额外的功能扩展及错误修复。 对于向TensorRT-OSS代码库贡献的指南,请查阅相关文档。 有关于每个TensorRT-OSS版本新增特性和更新的信息摘要也已提供。 构建 先决条件: 要构建TensorRT-OSS组件,您需要安装以下软件包。首先需确保拥有TensorRT GA(通用可用性)版本v7.2.1。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • TensorRTNVIDIA GPUC++
    优质
    TensorRT是由NVIDIA开发的一款高性能C++库,专为在GPU及深度学习加速器上进行高效的深度学习模型推理而设计。 该存储库包含NVIDIA TensorRT的开源软件(OSS)组件。这些组件包括TensorRT插件和解析器(如Caffe和ONNX),以及演示如何使用TensorRT平台及其功能的应用示例。这些开源软件是TensorRT通用可用性版本中的部分内容,具有额外的功能扩展及错误修复。 对于向TensorRT-OSS代码库贡献的指南,请查阅相关文档。 有关于每个TensorRT-OSS版本新增特性和更新的信息摘要也已提供。 构建 先决条件: 要构建TensorRT-OSS组件,您需要安装以下软件包。首先需确保拥有TensorRT GA(通用可用性)版本v7.2.1。
  • TensorRT 模型详细解析
    优质
    本文深入探讨了TensorRT的功能和优势,提供了关于如何使用该技术来优化及加速深度学习模型部署的全面指导。 本课程讲解了英伟达TensorRT在加速深度学习模型中的应用。不仅传授使用方法,还提供了实际工具,在此基础上完成一个统一的推理引擎和一个统一模型转换工具,可以将TF、Caffe 和 ONNX 模型通过配置文件转换为 TensorRT 模型,并利用推理引擎进行优化加速。同时课程中详细讲解了如何进行Int8量化,并赠送了一个手工读取和修改量化表的实用工具。此外,在性能优化方面也提供了丰富的指导,帮助学员避免常见的开发陷阱,使最终完成的工具有利于直接部署到实际工程应用中。
  • TensorRT 网络模型实现
    优质
    本研究探索了利用TensorRT优化深度学习模型在GPU上的推理速度,实现了显著的性能提升。 本段落档将介绍深度学习的应用场景、常规部署方法及面临的挑战,并基于这些挑战详细介绍NVIDIA提供的高效解决方案TensorRT及其性能和案例分享。
  • 为CPU、GPU开启编译堆栈
    优质
    本项目致力于研发适用于CPU、GPU及各类专用加速器的深度学习编译器技术,旨在优化算法性能并提升硬件资源利用率。 Apache TVM 是一个用于深度学习系统的编译器堆栈,旨在缩小以生产力为中心的深度学习框架与以性能和效率为中心的硬件后端之间的差距。TVM 可与各种深度学习框架配合使用,为不同的后端提供端到端编译服务。 许可:贡献者在 Apache-2.0 许可下获得授权。 对 TVM 的贡献: TVM 采用 apache committer 模型,我们致力于创建一个由社区维护和拥有的开源项目。详情请查看贡献者指南。 致谢: 构建 TVM 过程中,我们从以下项目中学到了很多东西: - Halide:TVM 部分 TIR 和算术简化模块源自 Halide,并且我们在 Halide 中学习并改编了一些降低管道的部分。 - Loopy:使用整数集分析及其循环转换原语。 - Theano:循环符号扫描算子的设计灵感来自 Theano。
  • ONNX Runtime:跨平台与训练
    优质
    ONNX Runtime是一款高效的执行工具,专为提升机器学习模型的推理和训练速度设计,支持多种平台无缝运行。 ONNX Runtime 是一个跨平台的推理与训练加速器,并且兼容多种流行的机器学习/深度神经网络框架,如 PyTorch、TensorFlow/Keras 和 scikit-learn 等。 许多用户可以从 ONNX Runtime 中获益,包括那些希望: 1. 提升各种 ML 模型的推断性能; 2. 减少大规模模型训练的时间和成本; 3. 使用 Python 进行培训但可以部署到 C# / C++ / Java 应用程序中; 4. 在不同的硬件及操作系统上运行; 5. 利用多个不同框架创建的支持模型。 自 2019 年 10 月以来,API 已经稳定并投入生产使用,从而实现了更快的客户体验和更低的成本。在预览阶段(2020年5月),引入了支持在多节点 NVIDIA GPU 上加速 PyTorch 训练的功能以针对变压器模型。 关于如何开始使用推断,请参阅文档中的不同版本组合指令说明。 ONNX Runtime 支持基于标准格式的模型,兼容包括但不限于 PyTorch、scikit-learn 和 TensorFlow 等框架和工具。从 ONNX v1.2.1 开始,ONNX Runtime 成为了最新版,并且持续更新以支持更多功能。
  • FPGA设计
    优质
    本研究专注于开发基于FPGA(现场可编程门阵列)的深度学习硬件加速器,旨在优化计算效率和性能,特别针对机器学习模型的推理过程进行硬件层面的加速。通过灵活配置和并行处理能力,实现低延迟、高吞吐量的数据分析与智能决策支持系统集成。 基于FPGA的深度学习加速器研究与开发正变得越来越重要。这种技术结合了现场可编程门阵列(FPGA)的高度灵活性与并行计算能力,为实现高效的深度学习模型提供了可能。通过利用FPGA的独特优势,研究人员和工程师能够设计出更快速、更具成本效益且能耗更低的解决方案,以应对日益复杂的机器学习任务挑战。 基于FPGA的深度学习加速器的应用范围广泛,包括但不限于图像识别、语音处理及自然语言理解等领域。随着技术的进步与优化算法的发展,这类硬件平台在推动人工智能领域创新方面发挥着越来越关键的作用。
  • TensorRTC++部署YOLOv10-GPU-C++源码与模型
    优质
    本项目提供基于TensorRT的C++代码及预训练模型,实现YOLOv10在GPU上的高效推理,显著提升目标检测性能和速度。 NVIDIA TensorRT 是一款用于高性能深度学习推理的软件开发工具包(SDK),包含优化器和运行时组件,能够为推理应用程序提供低延迟和高吞吐量。近期,清华大学的研究人员提出了一种名为YOLOv10的目标检测方法,通过消除非极大值抑制、优化模型架构及引入创新模块等策略,在保持高精度的同时显著降低了计算开销,从而在实时目标检测领域带来了新的突破。 本段落将展示如何使用NVIDIA TensorRT的C++ API来部署YOLOv10模型,并实现推理加速。经过测试,该方法可以实现在2毫秒内完成推理过程;包括前后处理在内的整个流程仅需大约15毫秒左右。项目源码和模型文件也已提供。 以上内容去除了所有不必要的联系信息和其他非相关链接,保留了原意不变。
  • 与TensorFlow-gpu 2.1.1版C++动态
    优质
    本项目致力于提供深度学习领域中基于TensorFlow-gpu 2.1.1版本的C++动态库资源,助力开发者高效构建、训练及部署复杂模型。 深度学习使用TensorFlow-gpu版本2.1.1。该版本包含C++动态库,包括include文件、dll和lib文件,可以正常使用。
  • NVIDIA DCGM: 监控评估NVIDIA GPU健康状态项目
    优质
    NVIDIA DCGM是一款强大的工具,专为监测与评估大规模GPU集群中的NVIDIA图形处理器健康状况而设计。它帮助用户实时跟踪并优化系统性能。 NVIDIA数据中心GPU管理器(DCGM)是一套用于在集群环境中管理和监控NVIDIA数据中心GPU的工具。它包括主动健康监测、全面诊断、系统警报以及电源与时钟管理等治理策略。该工具可以独立使用,并且能够轻松集成到NVIDIA合作伙伴的集群管理工具、资源调度和监视产品中,从而简化了数据中心中的GPU管理工作流程,提高了硬件可靠性和正常运行时间,自动化了常规任务并有助于提升整体基础设施效率。 DCGM支持Linux操作系统,在x86_64、Arm及POWER(ppc64le)平台上均可使用。安装程序包包括库文件、二进制文件以及NVIDIA验证套件(NVVS)和API源代码示例(C语言,Python和Go语言版本)。此外,DCGM还集成了收集GPU遥测数据的功能,并已融入Kubernetes生态系统中。
  • TVM - 开放编译堆栈,支持CPU、GPU及专(Python)
    优质
    TVM是一款开源深度学习编译器工具包,旨在优化跨多种硬件平台如CPU、GPU和专用AI芯片上的机器学习模型执行效率。使用Python进行开发与部署,助力研究人员和开发者轻松实现高性能的机器学习应用。 TVM是专为深度学习系统设计的编译器堆栈。它的目标是在以生产力为导向的深度学习框架与注重性能和效率的硬件后端之间架起桥梁。通过与主流深度学习框架相配合,TVM能够提供全面的编译服务来支持各种不同的硬件平台。 Apache TVM(孵化)是一个专为深度学习系统设计的编译器堆栈,在Apache-2.0许可下发布。它的目标是在注重生产力的深度学习框架和强调性能与效率的硬件后端之间建立连接,通过提供全面的跨平台编译服务来支持各类不同的硬件环境。 TVM采用了Apache Committer模型,并致力于创建一个由社区主导并维护的开源项目。在构建过程中,我们借鉴了许多其他项目的知识和技术: - Halide:TVM的部分模块(如TIR和算术简化)源自Halide。 - Loopy:它利用了整数集分析及其循环变换原语技术。 - Theano:其循环符号扫描操作的设计灵感来源于Theano。 这些项目对我们构建TVM提供了宝贵的指导和支持。