Đón xem YOLO Vision 2025!
25 tháng 9, 2025
10:00 — 18:00 BST
Sự kiện kết hợp
Yolo Vision 2024
Bảng chú giải thuật ngữ

TensorRT

Tối ưu hóa các mô hình deep learning với TensorRT để suy luận nhanh hơn, hiệu quả hơn trên GPU NVIDIA. Đạt được hiệu suất thời gian thực với YOLO và các ứng dụng AI.

TensorRT là một thư viện runtime và trình tối ưu hóa suy luận học sâu hiệu suất cao từ NVIDIA. Nó được thiết kế đặc biệt để tối đa hóa hiệu suất của mạng nơ-ron (NN) đã được huấn luyện trên Bộ xử lý đồ họa (GPU) NVIDIA. Sau khi một mô hình được huấn luyện bằng một framework như PyTorch hoặc TensorFlow, TensorRT sẽ lấy mô hình đó và áp dụng nhiều tối ưu hóa để chuẩn bị cho việc triển khai. Kết quả là một công cụ runtime hiệu quả cao, có thể giảm đáng kể độ trễ suy luận và cải thiện thông lượng, làm cho nó trở nên lý tưởng cho các ứng dụng yêu cầu suy luận theo thời gian thực.

Cách TensorRT Hoạt Động

TensorRT đạt được hiệu suất cao thông qua quy trình tối ưu hóa nhiều bước, chuyển đổi một mô hình đã được huấn luyện tiêu chuẩn thành một công cụ suy luận (inference engine) được tinh giản. Quy trình này phần lớn được tự động hóa và điều chỉnh cho phù hợp với kiến trúc GPU NVIDIA cụ thể mà nó sẽ được triển khai. Các kỹ thuật tối ưu hóa chính bao gồm:

  • Tối ưu hóa đồ thị: TensorRT phân tích mô hình đã huấn luyện và thực hiện tối ưu hóa đồ thị, chẳng hạn như loại bỏ các lớp không sử dụng và hợp nhất các lớp theo chiều dọc (kết hợp các lớp tuần tự) và theo chiều ngang (kết hợp các lớp song song). Điều này làm giảm số lượng hoạt động và chi phí bộ nhớ.
  • Hiệu chỉnh độ chính xác: Nó hỗ trợ suy luận độ chính xác thấp hơn, chẳng hạn như độ chính xác hỗn hợp (FP16) và INT8. Bằng cách chuyển đổi trọng số mô hình từ dấu phẩy động 32 bit (FP32) sang độ chính xác thấp hơn thông qua lượng tử hóa mô hình, TensorRT giảm đáng kể mức sử dụng bộ nhớ và yêu cầu tính toán với tác động tối thiểu đến độ chính xác.
  • Tự động điều chỉnh Kernel: TensorRT chọn từ một thư viện lớn các kernel GPU được tối ưu hóa cho từng hoạt động hoặc tạo các kernel được điều chỉnh đặc biệt cho GPU mục tiêu. Điều này đảm bảo rằng mọi tính toán được thực hiện hiệu quả nhất có thể trên phần cứng.
  • Tối ưu hóa bộ nhớ Tensor (Tensor Memory Optimization): Nó tối ưu hóa việc sử dụng bộ nhớ bằng cách sử dụng lại bộ nhớ cho các tensor trong suốt quá trình thực thi mô hình, giảm dung lượng bộ nhớ và cải thiện hiệu suất.

Các mô hình Ultralytics YOLO có thể dễ dàng được xuất sang định dạng TensorRT, cho phép các nhà phát triển tận dụng các tối ưu hóa này cho các ứng dụng thị giác máy tính (CV) của họ.

Các Ứng dụng Thực tế

TensorRT rất quan trọng để triển khai AI hiệu suất cao trong các môi trường nhạy cảm về thời gian và bị hạn chế về tài nguyên.

  1. Xe tự hành: Trong xe tự lái, các hệ thống nhận thức phải xử lý dữ liệu từ camera và cảm biến trong thời gian thực để phát hiện người đi bộ, các phương tiện khác và chướng ngại vật. Các mô hình như Ultralytics YOLO11 được tối ưu hóa với TensorRT có thể thực hiện phát hiện đối tượng với độ trễ cực thấp, điều này rất quan trọng để đưa ra các quyết định lái xe an toàn.
  2. Sản xuất thông minh: Trong nhà máy, AI trong sản xuất được sử dụng để kiểm soát chất lượng tự động. Một camera chụp ảnh các sản phẩm trên băng chuyền và một mô hình thị giác phân tích chúng để tìm lỗi. Bằng cách sử dụng TensorRT, các hệ thống này có thể theo kịp các dây chuyền sản xuất tốc độ cao, xác định các vấn đề ngay lập tức và cải thiện hiệu quả tổng thể.

So sánh TensorRT với các công nghệ liên quan

Mặc dù TensorRT là một inference engine (công cụ suy luận) mạnh mẽ, điều quan trọng là phải hiểu nó khác với các công cụ khác trong hệ sinh thái AI như thế nào:

  • Framework học sâu: Các framework như PyTorch và TensorFlow chủ yếu dùng để huấn luyện mô hình. Mặc dù chúng có các khả năng suy luận riêng, nhưng chúng không được tối ưu hóa cho việc triển khai như một runtime chuyên dụng như TensorRT.
  • ONNX Runtime: Định dạng Open Neural Network Exchange (ONNX) cung cấp một cách để biểu diễn các mô hình một cách tương tác. ONNX Runtime có thể thực thi các mô hình trên nhiều nền tảng phần cứng khác nhau, bao gồm cả GPU NVIDIA (nơi nó có thể sử dụng TensorRT làm nhà cung cấp thực thi). Tuy nhiên, tích hợp trực tiếp với TensorRT thường mang lại hiệu suất tốt hơn trên phần cứng NVIDIA do các tối ưu hóa dành riêng cho phần cứng của nó.
  • Intel OpenVINO: OpenVINO tương tự như TensorRT nhưng được tối ưu hóa cho phần cứng Intel (CPU, iGPU, VPU). Nó phục vụ cùng một mục đích là tăng tốc suy luận nhưng được điều chỉnh cho một hệ sinh thái phần cứng khác.

Ưu điểm chính của TensorRT là khả năng tích hợp sâu với hệ sinh thái NVIDIA, từ GPU đến thư viện CUDA, cho phép hiệu suất vượt trội cho các mô hình được triển khai trên nền tảng NVIDIA, như thường thấy trong các benchmark MLPerf. Việc quản lý triển khai mô hình có thể đượcStreamline hơn nữa với các nền tảng MLOps như Ultralytics HUB.

Tham gia cộng đồng Ultralytics

Tham gia vào tương lai của AI. Kết nối, hợp tác và phát triển cùng với những nhà đổi mới toàn cầu

Tham gia ngay
Đã sao chép liên kết vào clipboard