在 Windows 上,創意、游戲和生產力應用方面的 AI 體驗正在迅速擴展。有各種框架可用于在臺式機、筆記本電腦或工作站上本地加速這些應用中的 AI 推理。開發者需要適應廣泛的生態系統。他們必須在特定于硬件的庫或跨供應商框架 (如 DirectML) 之間進行選擇,以實現最高性能。DirectML 可簡化 CPU、GPU 和 NPU 之間的部署,但并不總是充分發揮每個設備的潛力。在性能和兼容性之間取得適當平衡對于開發者至關重要。
今天,我們宣布推出適用于 RTX 的 NVIDIA TensorRT ,以應對這些挑戰。它作為 Windows ML 的一部分在 Windows 11 上提供,Windows ML 是 Microsoft 在 Microsoft Build 上新發布的 AI 推理框架 。它們共同通過標準化 API 為開發者提供經 NVIDIA 優化的加速,從而實現跨各種硬件的無縫部署。

什么是 TensorRT for RTX?
TensorRT for RTX 是專為 Windows 構建的推理庫。此新版本基于之前的 NVIDIA TensorRT 推理庫對數據中心 GPU 的強大性能,針對 NVIDIA RTX GPU 進行了優化,與基準 DirectML 相比,優化幅度超過 50%,如圖 2 所示。它還支持包括 FP4 在內的不同量化類型,使 FLUX-1.dev 等新一代生成式 AI 模型能夠適應消費級 GPU。
它的一個關鍵優勢是無需預先生成編譯的推理引擎,因為這些引擎可以在目標 GPU 上在幾秒鐘內生成,如圖 5 和 6 所示。 與硬件兼容引擎相比 ,這些特定于 SKU 的引擎可將性能提升高達 20%。該庫現已輕量級,略低于 200 MB,如果使用 Windows ML,則無需在應用程序中預先打包,因為 Windows ML 將在后臺自動下載必要的庫。

開發者可以在搭載 NVIDIA RTX GPU 的專用 NVIDIA Tensor Core 上使用 FP4 和 FP8 計算的原生加速,實現更高的吞吐量,如圖 3 所示。

Windows ML 公開預覽版中提供了適用于 RTX 的 TensorRT。獨立庫也將于 6 月在 www.open-lab.net 上提供。
我們一直在對 TensorRT for RTX 進行采樣,以征求開發者的反饋,并且對收到的反饋感到驚訝。
Topaz Labs AI 引擎負責人 Dr. Suraj Raghuraman 表示:“Topaz Labs 快速集成了該庫,消除了我們之前需要數周時間才能完成的預生成 TensorRT 引擎的需求。在我們的 2B 模型 (v0.9.6) 的 txt2video 和 img2video 用例中,TensorRT for RTX 可輕松將 PyTorch 在 Windows PC 上的 FP16 性能提升 70% 以上。借助 FP8,我們額外獲得了 30% 的性能提升。所有這一切都需要不到 5 秒的令人慕的設備端 JIT 時間。我們很高興能夠探索該庫可以使用我們最新的 13B 模型 (v0.9.7) 做些什么。” Lightricks 研究副總裁 Ofir Bibi 說道。
使用 TensorRT 為 RTX 編譯模型
“適用于 RTX 推理庫的 TensorRT 采用即時 (JIT) 編譯的概念,并針對 RTX GPU 優化神經網絡。整個流程十分高效,在最終用戶設備上只需幾秒鐘即可完成,如下圖 5 和 6 所示。這是一個一次性流程,可在應用程序安裝時執行。目前,該庫支持 CNN、音頻、擴散和 Transformer 模型。”

TensorRT for RTX 通過兩階段流程簡化了將 ONNX 格式或通過原生 C++ API 定義的經過訓練的神經網絡轉換為高度優化的推理引擎的過程,如圖 4 所示。
AOT 編譯階段
與 GPU 無關的 AOT 階段完全在 CPU 上執行。此階段執行圖形優化并生成中間引擎,可將其配置為可選的排除權重。此中間引擎兼容跨 GPU 和跨操作系統,允許開發者在 Windows 或 Linux 系統上連接到 x86/amd64 主機的任何 RTX GPU 上構建硬件優化的推理引擎。
這使得“一次構建,在任意 NVIDIA GPU 上部署”的方法能夠簡化開發和部署工作流程。此過程所需的最小庫占用不到 100 MB,通常在 15 秒內完成,如圖 5 所示。開發者可以離線運行 AOT 階段并將中間引擎與應用打包,也可以將 AOT 庫與應用一起發布并在目標設備上運行 NVIDIA GPU 上。

此集合由專有模型和 OSS 模型組成,包括 SD2.1、SD3、SDXL、FLUX、ResNet、Mobilenet、DenseNet、Bert、Llama、Phi、VGG、T5、Inception、EfficientNet 等。對于任何給定網絡,AOT 階段只需運行一次。
JIT 編譯階段
在 JIT 編譯階段,中間引擎將轉換為針對目標 GPU 優化的最終可執行引擎。它利用 NVIDIA CUDA 編程模型的全部功能,更大限度地提高了 GPU 架構的性能。JIT 過程通常在幾秒鐘內完成,編譯的核函數會緩存在設備上,以進行近乎即時的后續調用。與 AOT 階段一樣,JIT 庫保持在 100 MB 以下的輕量級,確保高效的資源利用。

針對 PC AI 用例優化開發者工作流
除了使用較小的庫占用空間更快地構建高性能引擎外,TensorRT for RTX 還提供獨特的功能,以改善最終用戶在 Windows 應用中的 AI 體驗。
就擴散模型而言,適用于 RTX 的 TensorRT 可以處理具有無限 WxH 形狀維度的文本轉圖像工作負載。流程的 JIT 階段可以自動處理最終用戶請求的任何形狀,而不是強制應用開發者在優化配置文件中提前定義固定的形狀范圍。
“這是因為 JIT 庫為任何動態形狀提供了默認的內核實現,盡管性能較低。與任何圖像生成應用一樣,用戶可能希望構建更多圖像,直到對質量和語義準確性感到滿意為止。與此同時,當用戶不斷重新生成更多圖像時,JIT 運行時會根據用戶所需的特定形狀尺寸快速調整,并開始在后臺生成高性能內核。因此,inference 性能在經過一到兩次迭代后可提升高達 15%,因為高性能內核會自動替換后臺的默認內核。
TensorRT for RTX 還為開發者提供可配置的運行時內核緩存,以便在同一應用中跨多個模型共享。該緩存可加快不同模型之間類似工作負載的內核生成速度。它還支持在后續應用啟動時近乎即時地生成內核。開發者可以選擇在磁盤上保存緩存的位置,以及在應用或庫更新期間如何管理緩存。
“適用于 RTX 的 TensorRT 支持 FP32、FP16、BF16、FP8、INT8、FP4 和 INT4 等各種精度,因此適合不同的用例。所有 NVIDIA RTX GPU 均支持量化 INT8,NVIDIA Ampere GPU 及更新版本支持 FP8,NVIDIA Blackwell GPU 支持 FP4。INT4 優化通過僅權重量化實現。所有量化技術均可輕松用于 TensorRT Model Optimizer 。TensorRT for RTX 庫提供了在 NVIDIA RTX GPU 上實現新型數據類型產品化的最快途徑,以便供應商無關的框架能夠跟上這一趨勢。這些工具可優化新一代模型,使其適合 RTX GPU。”
它還可以與 graphics 等其他資源密集型工作負載同時運行。
總結?
我們很高興在 Microsoft Build 上宣布推出適用于 RTX 的 TensorRT,作為 NVIDIA RTX GPU 的專用推理部署解決方案,并支持 Windows ML。該庫的精簡大小為 200 MB,與目前可用的熱門解決方案相比,它縮短了構建時間,并將運行時性能提高了 50% 以上,從而開創了一個簡化易用性、擴展可移植性和更高性能的新時代。它可作為執行提供程序或直接作為獨立庫,用于加速 PC 應用中的 CNN、擴散、音頻和 Transformer 模型。
它可作為執行提供程序或直接作為獨立庫,用于加速 PC 應用中的 CNN、擴散、音頻和 Transformer 模型。雖然 Windows ML 路徑允許開發者通過標準化 API 自動訪問 NVIDIA 特定的加速,但需要額外控制的開發者可以直接集成該庫。
Microsoft Windows ML 將提供支持 TensorRT for RTX EP 的 Windows ML 預覽版。TensorRT for RTX SDK 也將于 6 月在 www.open-lab.net 上正式開放下載。
參加 Microsoft Build 的開發者還可以在 5 月 20 日 (星期二) 上午 11:45 (PDT) 或 5 月 21 日 (星期三) 上午 10:45 (PDT) 觀看我們的會議: Supercharge AI on RTX AI PCs with TensorRT BYOD 。
?