NVIDIA AI 软件生态完整学习笔记
一、先建立整体认识
NVIDIA 不只是做 GPU。
围绕 GPU,NVIDIA 已经建立了一套比较完整的 AI 软件生态,覆盖:
- GPU 底层计算
- 深度学习算子
- 模型训练
- 模型转换
- 推理优化
- 推理服务
- 视频流分析
- 大模型推理
- Jetson 边缘部署
- 性能分析
- 多 GPU 通信
- 机器人、语音、医疗等行业应用
因此,学习 NVIDIA 技术时,不能把:
- TensorRT
- DeepStream
- TAO
- CUDA
- Triton
看成几个互不相关的软件。
它们实际上处于不同层级。
可以先记住下面这条主线:
text
AI 应用
↓
DeepStream / Triton / NIM / Isaac / Riva
↓
TensorRT / TensorRT-LLM
↓
cuDNN / cuBLAS / CUDA Libraries
↓
CUDA
↓
NVIDIA Driver
↓
NVIDIA GPU
训练侧则是:
text
数据
↓
PyTorch / TensorFlow / TAO / NeMo
↓
训练得到模型
↓
ONNX 等中间格式
↓
TensorRT / TensorRT-LLM
↓
Triton / DeepStream / 自己的应用
↓
GPU
所以 NVIDIA 软件生态本质上可以理解成:
从"怎么使用 GPU",一直解决到"怎么把 AI 模型部署成完整生产系统"。
二、NVIDIA AI 技术栈分层
可以把整个体系大致分为 9 层。
text
第 9 层:行业应用
DeepStream / Isaac / Riva / Holoscan / NIM
第 8 层:推理服务
Triton Inference Server
第 7 层:推理优化
TensorRT / TensorRT-LLM
第 6 层:模型开发
PyTorch / TensorFlow / TAO / NeMo
第 5 层:模型交换
ONNX
第 4 层:GPU 加速库
cuDNN / cuBLAS / NCCL / CV-CUDA / DALI
第 3 层:GPU 编程平台
CUDA
第 2 层:驱动与系统环境
NVIDIA Driver / JetPack / Container Toolkit
第 1 层:硬件
RTX / Jetson / L4 / A100 / H100 / B 系列等
另外还有两套横向工具:
text
性能分析:
Nsight Systems
Nsight Compute
软件和模型分发:
NGC
三、CUDA:整个 NVIDIA 软件生态的地基
1. CUDA 是什么
CUDA 全称:
text
Compute Unified Device Architecture
CUDA 是 NVIDIA 提供的一套:
GPU 通用并行计算平台和编程模型。
没有 CUDA,大多数 NVIDIA GPU 上的 AI 加速都无法实现。
四、为什么需要 CUDA
普通程序主要运行在:
text
CPU
但是深度学习里面存在大量并行计算:
text
矩阵乘法
卷积
Attention
向量计算
图像处理
GPU 非常擅长这种大量、规则、重复的并行运算。
于是:
text
程序
↓
CUDA
↓
GPU
CUDA 提供了程序控制 GPU 的能力。
五、CUDA 中需要掌握的核心概念
如果以后做 AI 推理优化,建议至少理解:
text
CPU / Host
GPU / Device
CUDA Context
CUDA Kernel
Thread
Block
Grid
Warp
CUDA Stream
CUDA Event
Global Memory
Shared Memory
Register
Host Memory
Device Memory
Pinned Memory
Unified Memory
以及常见过程:
text
CPU Memory
↓
H2D
↓
GPU Memory
↓
CUDA Kernel
↓
GPU Memory
↓
D2H
↓
CPU Memory
其中:
text
H2D = Host To Device
D2H = Device To Host
以后优化 TensorRT 性能时,经常会看到:
text
cudaMalloc
cudaMemcpy
cudaMemcpyAsync
cudaStreamCreate
cudaStreamSynchronize
cudaEvent
CUDA Graph
六、CUDA Stream
CUDA Stream 是非常重要的概念。
默认情况下可以理解为:
text
任务1
↓
任务2
↓
任务3
串行执行。
而多个 Stream 可以实现:
text
Stream 0:
H2D → Inference → D2H
Stream 1:
H2D → Inference → D2H
从而产生并发和流水线。
因此在高性能推理中经常会出现:
text
异步推理
多 Stream
双 Buffer
Pipeline
这些本质上都与 CUDA Stream 有关系。
七、cuBLAS:GPU 矩阵计算库
cuBLAS:
text
CUDA Basic Linear Algebra Subprograms
它主要负责:
text
矩阵乘法
矩阵运算
向量运算
GEMM
最经典的是:
text
C = A × B
深度学习里面大量计算最后都可以转化成矩阵乘法。
例如:
text
Linear
MLP
Transformer
Attention
Fully Connected
因此:
text
Transformer
↓
矩阵乘法
↓
cuBLAS
↓
CUDA
↓
GPU
八、cuBLASLt
cuBLASLt 是更加灵活、高性能的矩阵乘法接口。
它支持:
text
不同数据类型
不同 Layout
Bias
Activation
Fusion
Tensor Core
多种 GEMM Algorithm
很多现代深度学习框架、TensorRT 等会利用这类底层库选择更优计算方案。
九、cuDNN:深度学习算子库
cuDNN 全称:
text
CUDA Deep Neural Network Library
它是 NVIDIA 专门针对深度学习开发的 GPU 算子库。
里面包含大量优化后的:
text
Convolution
Pooling
Activation
Normalization
Softmax
Attention
RNN
Tensor Operation
因此 PyTorch 执行:
python
y = conv(x)
实际可能是:
text
PyTorch
↓
cuDNN
↓
CUDA Kernel
↓
GPU
十、CUDA 和 cuDNN 的关系
注意:
text
CUDA ≠ cuDNN
CUDA 是底层 GPU 计算平台。
cuDNN 是建立在 CUDA 之上的深度学习高性能库。
关系:
text
PyTorch
↓
cuDNN / cuBLAS
↓
CUDA
↓
GPU
十一、TensorRT:NVIDIA 推理优化核心
TensorRT 是 NVIDIA AI 部署生态中最重要的工具之一。
它解决的问题是:
怎么让训练好的神经网络模型,在 NVIDIA GPU 上进行更快、更省显存、更高吞吐的推理。
十二、TensorRT 不负责训练
TensorRT 一般不是用来训练模型的。
典型流程:
text
PyTorch
↓
训练
↓
.pt
↓
ONNX
↓
TensorRT Builder
↓
TensorRT Engine
↓
TensorRT Runtime
↓
GPU
因此:
text
PyTorch = 模型开发和训练
ONNX = 模型表达 / 交换
TensorRT = 模型推理优化
CUDA = GPU 计算平台
十三、TensorRT 的两个核心阶段
可以简单分为:
Build 阶段
text
模型
↓
解析
↓
构建计算图
↓
图优化
↓
Tactic Selection
↓
精度选择
↓
生成 Engine
最终得到:
text
TensorRT Engine
Runtime 阶段
运行时主要是:
text
加载 Engine
↓
创建 Execution Context
↓
准备 Input / Output Buffer
↓
H2D
↓
enqueue
↓
GPU 推理
↓
D2H
十四、TensorRT 为什么快
TensorRT 并不是简单地"调用 GPU"。
它会进行大量优化。
主要包括:
1. Layer Fusion
例如:
text
Conv
↓
BatchNorm
↓
ReLU
可能融合成:
text
Conv + BN + ReLU
减少:
text
Kernel Launch
Memory Read
Memory Write
2. Precision Calibration
支持不同精度:
text
FP32
FP16
BF16
FP8
INT8
INT4
例如:
text
FP32
↓
FP16
可以:
text
减少显存
提高吞吐
使用 Tensor Core
3. Tactic Selection
同一个操作可能有很多种实现。
例如:
text
Conv
可能有:
text
Algorithm A
Algorithm B
Algorithm C
Algorithm D
TensorRT Build 阶段会测试或者选择更适合当前:
text
GPU
Tensor Shape
Precision
的实现。
这种实现策略通常被称为:
text
Tactic
4. Kernel Auto-Tuning
根据:
text
GPU 架构
Tensor Shape
Batch Size
数据类型
选择合适 Kernel。
5. Memory Optimization
TensorRT 会尝试:
text
复用内存
减少中间 Tensor
优化 Workspace
减少数据搬运
十五、TensorRT Plugin
如果模型里面存在 TensorRT 不支持的算子:
text
Custom Op
可以自己实现:
text
TensorRT Plugin
例如:
text
特殊 Decode
特殊 NMS
自定义 Attention
特殊采样算子
因此高级 TensorRT 工程师经常需要:
text
C++
CUDA
TensorRT Plugin
一起掌握。
十六、ONNX:模型交换格式
ONNX 不属于 NVIDIA。
但它和 NVIDIA 推理生态关系非常密切。
ONNX 可以理解为:
一种通用的神经网络计算图表示。
例如:
text
PyTorch
↓
ONNX
↓
TensorRT
也可以:
text
PyTorch
↓
ONNX
↓
ONNX Runtime
所以 ONNX 是:
text
模型训练框架
↓
统一中间模型表示
↓
推理框架
中间的桥梁。
十七、DeepStream:视频 AI Pipeline 框架
TensorRT 主要解决:
一个模型怎么跑快。
DeepStream 主要解决:
摄像头、视频解码、模型推理、跟踪、业务输出怎么组成完整实时视频系统。
这是两者最重要的区别。
十八、DeepStream 的典型应用
例如高速公路:
text
RTSP Camera × 16
↓
视频解码
↓
Batch
↓
YOLO
↓
车辆检测
↓
目标跟踪
↓
车型识别
↓
车牌识别
↓
业务规则
↓
Kafka / MQTT
↓
后端服务器
如果所有东西自己写,需要处理:
text
RTSP
FFmpeg / GStreamer
NVDEC
视频 Buffer
GPU Memory
Batch
TensorRT
Tracker
Multi Stream
线程同步
消息队列
DeepStream 帮你封装了大量能力。
十九、DeepStream 建立在 GStreamer 之上
GStreamer 是一个多媒体 Pipeline 框架。
它的核心思想:
text
Source
↓
Plugin
↓
Plugin
↓
Plugin
↓
Sink
例如:
text
RTSP
↓
Decoder
↓
Resize
↓
Inference
↓
Tracker
↓
OSD
↓
Display
DeepStream 本质上:
在 GStreamer 上增加大量 NVIDIA AI 和 GPU 加速插件。
二十、DeepStream 常见组件
需要慢慢认识这些:
text
nvurisrcbin
nvv4l2decoder
nvstreammux
nvinfer
nvinferserver
nvtracker
nvdsosd
nvmsgconv
nvmsgbroker
二十一、nvinfer
这是 DeepStream 中非常重要的插件。
主要负责:
text
模型加载
↓
TensorRT
↓
Inference
因此:
text
DeepStream
↓
nvinfer
↓
TensorRT
↓
CUDA
↓
GPU
二十二、DeepStream 与 TensorRT 的本质区别
记住:
text
TensorRT
解决:
模型怎么跑快
而:
text
DeepStream
解决:
视频 AI 系统怎么组成完整 Pipeline
两者关系:
text
DeepStream
↓
TensorRT
↓
CUDA
DeepStream 可以调用 TensorRT,但 TensorRT 并不依赖 DeepStream。
二十三、TAO Toolkit
TAO 是 NVIDIA 提供的模型训练和模型定制工具。
TAO 主要目标:
让用户利用 NVIDIA 提供的模型、预训练模型和训练工具,更快速完成迁移学习、微调和模型定制。
二十四、TAO 主要负责什么
例如:
text
数据
↓
预训练模型
↓
Fine-tuning
↓
Evaluation
↓
Pruning
↓
Quantization
↓
Export
适合:
text
Detection
Classification
Segmentation
Pose
OCR
Embedding
等任务。
二十五、TAO 与 TensorRT 的关系
TAO:
text
训练 / Fine-tuning
TensorRT:
text
部署 / 推理优化
例如:
text
TAO
↓
训练
↓
Export
↓
ONNX
↓
TensorRT
↓
Engine
二十六、TAO 与 DeepStream 的关系
完整流程可能是:
text
数据
↓
TAO
↓
训练模型
↓
ONNX
↓
TensorRT
↓
DeepStream
↓
摄像头实时分析
因此:
text
TAO
=
模型开发
TensorRT
=
模型优化
DeepStream
=
视频系统
二十七、Triton Inference Server
这是服务器模型部署非常重要的 NVIDIA 工具。
Triton 解决的问题:
怎么把 AI 模型作为稳定、高吞吐的推理服务部署出去。
例如:
text
Client
↓
HTTP / gRPC
↓
Triton
↓
TensorRT
↓
GPU
二十八、Triton 与 FastAPI 的区别
FastAPI 是:
text
Web Framework
主要负责:
text
HTTP API
业务逻辑
鉴权
数据库
请求解析
Web 服务
Triton 则是:
text
Inference Server
主要负责:
text
Model Loading
GPU Scheduling
Batching
Concurrency
Model Version
Inference Request
Metrics
因此:
text
FastAPI ≠ Triton
二十九、FastAPI + Triton
实际项目完全可以:
text
用户
↓
FastAPI
↓
业务逻辑
↓
Triton
↓
TensorRT
↓
GPU
FastAPI 负责:
text
用户
数据库
业务流程
权限
Triton 负责:
text
模型推理
Batching
GPU
这种架构在服务器 AI 部署里面很常见。
三十、Triton 的 Dynamic Batching
例如有:
text
Request 1
Request 2
Request 3
Request 4
如果直接一个个执行:
text
batch = 1
batch = 1
batch = 1
batch = 1
GPU 利用率可能比较低。
Triton 可以等待很短时间,把请求组成:
text
Batch = 4
然后一起推理。
这叫:
text
Dynamic Batching
可以提高:
text
Throughput
三十一、Triton 的 Model Repository
Triton 一般使用:
text
Model Repository
管理模型。
例如:
text
models/
├── yolo/
│ ├── 1/
│ │ └── model.plan
│ └── config.pbtxt
├── segmentation/
│ └── ...
└── classification/
└── ...
从而实现:
text
多模型
模型版本
模型实例
管理。
三十二、JetPack
JetPack 是 Jetson 平台的软件开发环境。
如果使用:
text
Jetson Nano
Jetson Xavier
Jetson Orin Nano
Jetson Orin NX
Jetson AGX Orin
都会经常接触 JetPack。
三十三、JetPack 包含什么
可以简单理解成:
text
JetPack
|
├── Jetson Linux
├── NVIDIA Driver
├── CUDA
├── cuDNN
├── TensorRT
├── Multimedia API
└── 开发工具
因此:
text
Jetson Hardware
↓
JetPack
↓
CUDA / TensorRT
↓
你的 AI 程序
三十四、JetPack 和 DeepStream
DeepStream 可以运行:
text
数据中心 GPU
RTX GPU
Jetson
Jetson 上:
text
JetPack
↓
DeepStream
↓
TensorRT
↓
CUDA
↓
Jetson GPU
三十五、CV-CUDA
CV-CUDA 是一个 GPU 图像处理库。
它主要解决:
模型虽然很快,但前处理和后处理太慢的问题。
例如:
text
OpenCV
Resize
Normalize
Color Conversion
Crop
如果都放 CPU:
text
CPU
↓
预处理
↓
H2D
↓
TensorRT
可能 CPU 成为瓶颈。
三十六、CV-CUDA 优化思路
可以:
text
Image
↓
GPU
↓
CV-CUDA
↓
TensorRT
↓
GPU Postprocess
实现:
text
GPU preprocessing
+
GPU inference
+
GPU postprocessing
尽量减少:
text
CPU ↔ GPU
拷贝。
三十七、为什么 CV-CUDA 对部署工程师重要
推理系统优化最终看的不是:
text
模型 inference time
而是:
text
End-to-End Latency
例如:
text
Decode 4ms
Preprocess 3ms
Inference 4ms
Postprocess 3ms
总耗时:
text
14ms
你把 TensorRT:
text
4ms
优化成:
text
3ms
只提升了 1ms。
反而 GPU 化前后处理,可能收益更大。
所以高级部署一定要看:
text
整个 Pipeline
而不是只看 TensorRT。
三十八、DALI
DALI:
text
Data Loading Library
主要用于训练阶段。
解决:
text
GPU 等 CPU 数据
的问题。
传统训练:
text
Disk
↓
CPU Decode
↓
CPU Resize
↓
Augmentation
↓
GPU Training
如果 CPU 太慢:
text
GPU 等待
DALI 可以把很多数据 Pipeline 进行高性能优化。
三十九、DALI 与 CV-CUDA 的区别
粗略理解:
text
DALI
↓
训练数据 Pipeline
而:
text
CV-CUDA
↓
CV 推理/图像处理 Pipeline
两者会存在功能交叉,但主要应用场景不同。
四十、NGC
NGC 可以理解为 NVIDIA 的:
text
AI 软件仓库
里面包含:
text
Docker Image
Model
SDK
Pretrained Model
Helm Chart
AI Framework
例如:
text
TensorRT Container
PyTorch Container
Triton Container
DeepStream Container
经常会看到:
text
nvcr.io
这就是 NVIDIA Container Registry。
四十一、NGC 的价值
假如自己搭:
text
Ubuntu
CUDA
cuDNN
TensorRT
Python
PyTorch
版本很容易冲突。
NVIDIA 会在 NGC 提供:
text
预配置 Docker
例如:
text
PyTorch
+
CUDA
+
cuDNN
+
NCCL
已经匹配好版本。
四十二、NVIDIA Container Toolkit
如果 Docker 需要访问 NVIDIA GPU:
text
Docker
↓
GPU
一般需要:
text
NVIDIA Container Toolkit
然后:
bash
docker run --gpus all ...
才能让容器访问 GPU。
因此服务器部署常见架构:
text
Linux
↓
NVIDIA Driver
↓
Docker
↓
NVIDIA Container Toolkit
↓
PyTorch / TensorRT / Triton Container
↓
GPU
四十三、Nsight Systems
Nsight Systems 是:
系统级性能分析工具。
主要看:
text
CPU
Thread
CUDA
Kernel
Memcpy
CUDA Stream
GPU Utilization
时间线。
例如:
text
CPU preprocess
H2D
TensorRT
D2H
CPU postprocess
可以发现:
text
GPU 是否空闲
CPU 是否成为瓶颈
Memcpy 是否过多
Stream 有没有并发
四十四、Nsight Compute
Nsight Compute 更底层。
它主要分析:
text
CUDA Kernel
可以看到:
text
SM Utilization
Occupancy
Warp
Tensor Core
Memory Throughput
Cache
Warp Stall
因此:
text
Nsight Systems
↓
找出哪段慢
↓
Nsight Compute
↓
分析为什么慢
四十五、Nsight Systems 和 Nsight Compute 的区别
记住:
text
Nsight Systems
看森林
而:
text
Nsight Compute
看一棵树
例如:
Nsight Systems 发现:
text
某 CUDA Kernel 占 20ms
然后 Nsight Compute 分析:
text
为什么这个 Kernel 20ms
四十六、NCCL
NCCL:
text
NVIDIA Collective Communications Library
主要解决:
text
GPU ↔ GPU
通信。
特别是:
text
多 GPU
分布式训练
大模型训练
大模型推理
四十七、NCCL 常见通信操作
包括:
text
AllReduce
AllGather
ReduceScatter
Broadcast
Reduce
例如 PyTorch:
text
DistributedDataParallel
底层 GPU 通信很多时候会调用 NCCL。
四十八、TensorRT-LLM
TensorRT 主要是通用深度学习推理优化。
随着 LLM 出现,NVIDIA 又提供:
text
TensorRT-LLM
专门优化大模型推理。
四十九、为什么 LLM 需要专门推理框架
LLM 和传统 CNN 不太一样。
需要处理:
text
KV Cache
Attention
Continuous Batching
Paged KV Cache
Tensor Parallel
Pipeline Parallel
Quantization
所以形成:
text
LLM
↓
TensorRT-LLM
↓
CUDA / NCCL
↓
GPU
五十、普通 TensorRT 和 TensorRT-LLM
简单记:
text
TensorRT
更偏通用模型 / CV / 通用 DL
text
TensorRT-LLM
专门针对 LLM
不过两者底层技术存在大量联系。
五十一、NeMo
NeMo 是 NVIDIA 的生成式 AI / 大模型模型开发生态。
主要涉及:
text
LLM
VLM
Speech
ASR
TTS
等模型的:
text
Training
Fine-tuning
Post-training
Evaluation
可以粗略理解:
text
视觉:
TAO
↓
TensorRT
text
生成式 AI:
NeMo
↓
TensorRT-LLM
这只是帮助理解,不是绝对的技术边界。
五十二、NIM
NIM:
text
NVIDIA Inference Microservices
它进一步把:
text
模型
Runtime
TensorRT / TensorRT-LLM
Container
API
封装起来。
最终用户看到:
text
HTTP API
因此 NIM 的定位可以理解为:
NVIDIA 提供的生产级 AI 推理微服务封装。
五十三、NIM 与 Triton 的区别
粗略理解:
text
Triton
=
通用模型推理服务器
而:
text
NIM
=
已经围绕特定模型封装好的 AI 微服务
NIM 更高层。
其内部可能使用:
text
TensorRT
TensorRT-LLM
Triton
CUDA
等技术。
五十四、Riva
Riva 是 NVIDIA 的语音 AI SDK。
主要用于:
text
ASR
TTS
Speech AI
例如:
text
Microphone
↓
Riva
↓
ASR
↓
文字
或者:
text
文本
↓
Riva
↓
TTS
↓
语音
五十五、Isaac
Isaac 是 NVIDIA 机器人生态。
涉及:
text
机器人
视觉
导航
感知
仿真
强化学习
ROS
常见:
text
Isaac Sim
Isaac ROS
其底层同样大量依赖:
text
CUDA
TensorRT
GPU
五十六、Holoscan
Holoscan 更偏:
text
传感器 AI
实时计算
医疗
工业
机器人
边缘 AI
例如:
text
Camera / Sensor
↓
GPU Processing
↓
AI
↓
Real-Time Result
强调:
text
Low Latency
Streaming
Sensor Processing
五十七、整个 NVIDIA AI 软件生态关系
最终建议记住下面这张图:
text
应用层
┌────────────────────────────────────────────┐
│ DeepStream │ Riva │ Isaac │ Holoscan │ NIM│
└──────────────────────┬─────────────────────┘
│
服务层
┌────────────────────────────────────────────┐
│ Triton Inference Server │
└──────────────────────┬─────────────────────┘
│
推理优化层
┌────────────────────────────────────────────┐
│ TensorRT TensorRT-LLM │
└──────────────────────┬─────────────────────┘
│
模型层
┌────────────────────────────────────────────┐
│ PyTorch │ TensorFlow │ TAO │ NeMo │
└──────────────────────┬─────────────────────┘
│
模型交换层
┌────────────────────────────────────────────┐
│ ONNX │
└──────────────────────┬─────────────────────┘
│
GPU 加速库
┌────────────────────────────────────────────┐
│cuDNN│cuBLAS│NCCL│CV-CUDA│DALI│其他 CUDA 库│
└──────────────────────┬─────────────────────┘
│
CUDA
┌────────────────────────────────────────────┐
│ Kernel │ Stream │ Runtime │ Memory │ Graph │
└──────────────────────┬─────────────────────┘
│
Driver
│
NVIDIA GPU
注意:
ONNX 在实际软件层次中不一定严格位于训练层和 CUDA 库之间。
这里主要是帮助理解模型部署流程。
五十八、几个核心组件一句话区分
| 技术 | 一句话理解 |
|---|---|
| CUDA | NVIDIA GPU 编程和计算平台 |
| cuBLAS | GPU 矩阵计算库 |
| cuDNN | GPU 深度学习算子库 |
| ONNX | 模型交换格式 |
| TensorRT | NVIDIA GPU 推理优化框架 |
| DeepStream | 实时视频 AI Pipeline |
| TAO | NVIDIA 模型训练和微调工具 |
| Triton | AI 模型推理服务器 |
| JetPack | Jetson 软件开发环境 |
| CV-CUDA | GPU 图像处理库 |
| DALI | 高性能训练数据 Pipeline |
| NGC | NVIDIA AI 软件/容器/模型仓库 |
| Nsight Systems | 系统级性能分析 |
| Nsight Compute | CUDA Kernel 性能分析 |
| NCCL | 多 GPU 通信 |
| TensorRT-LLM | LLM 推理优化 |
| NeMo | LLM/VLM/Speech 模型开发 |
| NIM | AI 推理微服务 |
| Riva | Speech AI |
| Isaac | Robotics AI |
| Holoscan | Sensor / Real-Time AI |
五十九、TensorRT、DeepStream、TAO、Triton 最核心区别
这是最需要熟练掌握的一组。
TAO
回答:
text
模型怎么训练出来?
TensorRT
回答:
text
模型怎么在 NVIDIA GPU 上跑得快?
Triton
回答:
text
模型怎么稳定地提供服务器推理服务?
DeepStream
回答:
text
模型怎么进入实时多路视频系统?
因此:
text
TAO
↓
模型训练
↓
ONNX
↓
TensorRT
↓
高性能推理
↓
┌─────────────┐
↓ ↓
Triton DeepStream
↓ ↓
API 服务 视频 AI
六十、真实项目 1:普通 YOLO 部署
text
PyTorch
↓
YOLO.pt
↓
ONNX
↓
TensorRT
↓
Engine
↓
C++ / Python
↓
CUDA
↓
NVIDIA GPU
这是最基本 AI 部署流程。
六十一、真实项目 2:Jetson YOLO
text
Jetson
↓
JetPack
↓
CUDA
↓
TensorRT
↓
YOLO Engine
↓
C++ Application
如果加摄像头:
text
Camera
↓
GStreamer
↓
NVDEC
↓
TensorRT
↓
Result
六十二、真实项目 3:DeepStream 视频系统
例如 16 路高速公路摄像头:
text
RTSP × 16
↓
NVDEC
↓
nvstreammux
↓
TensorRT YOLO
↓
nvtracker
↓
Vehicle Classification
↓
License Plate Recognition
↓
nvmsgbroker
↓
Kafka / MQTT
↓
Server
这里 DeepStream 价值巨大。
六十三、真实项目 4:服务器 AI API
传统:
text
Client
↓
FastAPI
↓
Python
↓
PyTorch
↓
GPU
进阶:
text
Client
↓
FastAPI
↓
Triton
↓
TensorRT
↓
CUDA
↓
GPU
其中:
text
FastAPI
负责业务
text
Triton
负责模型服务
text
TensorRT
负责模型加速
text
CUDA
负责 GPU 计算
六十四、真实项目 5:完整 CV 高性能 Pipeline
普通版本:
text
Image
↓
OpenCV
↓
Resize
↓
Normalize
↓
H2D
↓
TensorRT
↓
D2H
↓
CPU NMS
高级版本:
text
Image
↓
GPU Decode
↓
CV-CUDA
↓
TensorRT
↓
GPU NMS
↓
Result
核心目标:
text
减少 CPU/GPU Copy
减少同步
增加并发
增加 GPU Pipeline
六十五、真实项目 6:大模型推理
text
Qwen / Llama / DeepSeek
↓
TensorRT-LLM
↓
CUDA
↓
NCCL
↓
GPU × N
服务器:
text
Client
↓
API
↓
Triton / NIM
↓
TensorRT-LLM
↓
GPU
六十六、整个 NVIDIA 生态最终解决的几个问题
实际上所有 NVIDIA 工具都围绕几个问题展开。
问题一
text
GPU 怎么计算?
答案:
text
CUDA
问题二
text
矩阵和深度学习算子怎么快速计算?
答案:
text
cuBLAS
cuDNN
问题三
text
模型怎么跑快?
答案:
text
TensorRT
问题四
text
多个模型怎么提供服务?
答案:
text
Triton
问题五
text
几十路视频怎么实时 AI 分析?
答案:
text
DeepStream
问题六
text
模型怎么训练和 Fine-tune?
答案:
text
TAO
NeMo
问题七
text
怎么分析程序为什么慢?
答案:
text
Nsight Systems
Nsight Compute