0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

NVIDIA Triton系列文章:開發(fā)資源說明

NVIDIA英偉達企業(yè)解決方案 ? 來源:NVIDIA英偉達企業(yè)解決方案 ? 作者:NVIDIA英偉達企業(yè)解 ? 2022-11-09 16:17 ? 次閱讀

大部分要學習 Triton 推理服務器的入門者,都會被搜索引擎或網(wǎng)上文章引導至官方的https://developer.nvidia.com/nvidia-triton-inference-server處(如下截圖),然后從 “Get Started” 直接安裝服務器與用戶端軟件、創(chuàng)建基礎(chǔ)的模型倉、執(zhí)行一些最基本的范例。

075dc9d0-5f58-11ed-8abf-dac502259ad0.png

這條路徑雖然能在很短時間內(nèi)跑起 Triton 的應用,但在未掌握整個應用架構(gòu)之前便貿(mào)然執(zhí)行,反倒容易讓初學者陷入迷失的狀態(tài),因此建議初學者最好先對 Triton 項目有比較更完整的了解之后,再執(zhí)行前面的 “Get Started” 就會更容易掌握項目的精髓。

要獲得比較完整的 Triton 技術(shù)資料,就得到項目開源倉里去尋找。與 NVIDIA 其他放在 https://github.com/NVIDIA或https://github.com/NVIDIA-AI-IOT的項目不同,Triton 項目有獨立的開源倉,位置在https://github.com/triton-inference-server,進入開源倉后會看到如下截屏的內(nèi)容:

0777b1f6-5f58-11ed-8abf-dac502259ad0.png

下面列出四大部分的技術(shù)資源:

1. Getting Start(新手上路):

這里提供三個鏈接,比較重要的是 “Quick Start(快速啟動)” 的部分,提供以下三個步驟就能輕松執(zhí)行 Triton 的基礎(chǔ)示范:

(1) Create a Model Repository(創(chuàng)建模型倉)

(2) Launch Triton(啟動Triton服務器與用戶端)

(3) Send an Inference Request(提交推理要求)

2. Production Documentation(生產(chǎn)文件):

這里最重要的是 “server documents on GitHub” 鏈接,點進去后會進入整個 Triton 項目中最完整的技術(shù)文件中心(如下圖),除 Installation 與 Getting Started 屬于入門范疇,其余 User Guide、API Guide、Additional Resources 與 Customization Guide 等四個部分,都是 Triton 推理服務器非常重要的技術(shù)內(nèi)容。

079daa00-5f58-11ed-8abf-dac502259ad0.png

因此這個部分可以算得上是學習 Triton 服務器的最重要資源。

例如點擊 “User Guide” 之后,就會看到以下所條例的執(zhí)行步驟:

Creating a Model Repository

Writing a Model Configuration

Buillding a Model Pipeline

Managing Model Availablity

Collecting Server Metrics

Supporting Custom Ops/layers

Using the Client API

Analyzing Performance

Deploying on edge (Jetson)

3. Examples(范例):

這里的范例,比較重要的是指向https://github.com/NVIDIA/DeepLearningExamples鏈接,列出針對 NVIDIA Tensor Core 計算單元的深度學習模型列表,包括計算機視覺、NLP 自然語言處理、推薦系統(tǒng)、語音轉(zhuǎn)文字 / 文字轉(zhuǎn)語音、圖形神經(jīng)網(wǎng)絡(luò)、時間序列等各種神經(jīng)網(wǎng)絡(luò)模型細節(jié),包括網(wǎng)絡(luò)結(jié)構(gòu)與相關(guān)參數(shù)的內(nèi)容。

對于未來要在 Triton 服務器上,對于所使用的網(wǎng)絡(luò)后端進行性能優(yōu)化或者創(chuàng)建新的后端,會有很大的助益,但是對于初學者來說是相對艱澀的,因此現(xiàn)階段先不做深入的說明與示范。

4. Feedback(反饋):

這里會鏈接到https://github.com/triton-inference-server/server/issues問題中心,是 Triton 項目中最重要的技術(shù)問題解決資源之一,后面執(zhí)行過程中所遇到的問題,都可以先到這里來查看是否有人已經(jīng)提出?如果沒有的話,也可以在這里提交自己所遇到的問題,項目負責人會提供合適的回復。

以上第 2、4 兩項資源,對初學者來說會有最大的幫助。接著看一下項目里 “釘住(Pinned)” 的 6 個倉(如下圖),是比較重要的基礎(chǔ)部分,涵蓋了 Triton 架構(gòu)圖中的主要板塊。

07cfb18a-5f58-11ed-8abf-dac502259ad0.png

主要內(nèi)容如下:

1. server 倉:

這里集成整個項目的主要內(nèi)容,包括幾部分:

(1)deploy(部署):提供在阿里巴巴、亞馬遜等云資源的部署方式,以及基于 NVIDIA Fleet 指令集、GKE(Google kubernets Engine)、k8s、Helm 等應用平臺的各種部署方法;

(2)docker(容器):修正一些創(chuàng)建容器腳本的錯誤;

(3)docs(使用說明):就是前面 “生產(chǎn)文件(Production Documentation)” 的內(nèi)容,這里不重復贅述;

(4)qa(質(zhì)量優(yōu)化):由于 Triton 推理服務器有非常多優(yōu)化的環(huán)節(jié),在這個目錄下提供上百個不同狀況的優(yōu)化測試腳本;

(5)src(源代碼):目錄下存放整個 Triton 推理服務器的開源代碼(.cc)、頭文件(.h)與編譯腳本(CMakeLists.txt);

(6)其他代碼與腳本

2. core 倉:

此存儲庫包含實現(xiàn) Triton 核心功能的庫的源代碼和標頭。核心庫可以如下所述構(gòu)建,并通過其 CAPI 直接使用。為了有用,核心庫必須與一個或多個后端配對。您可以在后端回購中了解有關(guān)后端的更多信息。

3. backend 倉:

提供創(chuàng)建 Triton 服務器后端(backend)的源代碼、腳本與工具?!昂蠖恕?是用來執(zhí)行不同深度學習模型的管理模塊,以深度學習框架進行封裝,例如 PyTorch、Tensorflow、ONNX Runtime 與 TensorRT 等等,用戶也可以為了性能目的,自行定義 C / C++ 封裝方式。

4. client 倉:

提供 Triton 用戶端的 C++ / Python / Java 開發(fā)接口、能生成適用于不同編程語言的 GRPC 開發(fā)接口的 protoc 編譯器,以及對應的用戶端范例;

5. model_analyzer 倉:

深度學習模型(model)是 Triton 推理服務器的最基礎(chǔ)組成元件,因此對分析模型的計算與內(nèi)存需求是服務器性能的一項關(guān)鍵功能。這個 model_analyzer 模型分析工具是一種 CLI 工具,這款新工具可以自動化地從數(shù)百種組合中為 AI 模型選擇最佳配置,以實現(xiàn)最優(yōu)性能,同時確保應用程序所需的服務質(zhì)量,能幫助開發(fā)人員更好地了解不同配置中的權(quán)衡,并選擇能夠最大化 Triton 的性能配置;

6. model_navigator 倉:

這個 model_navigator 模型導航器是一種能夠自動將模型從源移動到最佳格式和配置的工具,支持將模型從源導出為所有可能的格式,并應用 Triton 服務器的后端優(yōu)化。使用模型分析器能找到最佳的模型配置,匹配提供的約束條件并優(yōu)化性能。

以上是 Triton 開源項目里比較核心的 6 個倉,另外還有 20 多個代碼倉,其中大約 15 個是項目提供的后端(backend)擴充應用,例如 tensorrt_backend、fil_backend、square_backend 等等,以及一些額外的管理工具,并且不斷增加中。

本系列后面的內(nèi)容都會基于這個 server 倉的 docs 目錄下的內(nèi)容為主,按部就班地帶著讀者循序漸進創(chuàng)建與調(diào)試 Triton 推理服務器的運作環(huán)境。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • NVIDIA
    +關(guān)注

    關(guān)注

    14

    文章

    4855

    瀏覽量

    102711
  • 服務器
    +關(guān)注

    關(guān)注

    12

    文章

    8958

    瀏覽量

    85082

原文標題:NVIDIA Triton 系列文章(3):開發(fā)資源說明

文章出處:【微信號:NVIDIA-Enterprise,微信公眾號:NVIDIA英偉達企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    NVIDIA與印度攜手計劃聯(lián)合開發(fā)定制AI芯片

     10月23日,有媒體報道稱,NVIDIA正計劃與印度攜手開發(fā)人工智能芯片,旨在充分利用印度豐富的半導體設(shè)計人才資源,并深入開拓印度這一快速增長的市場。   此次合作不僅有助于NVIDI
    的頭像 發(fā)表于 10-23 11:50 ?329次閱讀

    NVIDIA助力提供多樣、靈活的模型選擇

    在本案例中,Dify 以模型中立以及開源生態(tài)的優(yōu)勢,為廣大 AI 創(chuàng)新者提供豐富的模型選擇。其集成的 NVIDIAAPI Catalog、NVIDIA NIM和Triton 推理服務器產(chǎn)品,為
    的頭像 發(fā)表于 09-09 09:19 ?413次閱讀

    借助OpenUSD和NVIDIA Omniverse開發(fā)數(shù)字孿生應用

    為了滿足制造業(yè)和其他行業(yè)的數(shù)字化轉(zhuǎn)型需求,致力于開發(fā)生產(chǎn)、內(nèi)部物流和裝配優(yōu)化軟件的公司 SyncTwin GmbH 通過使用用于解決復雜路線規(guī)劃問題的加速優(yōu)化引擎NVIDIA cuOpt和由應用編程
    的頭像 發(fā)表于 09-06 14:18 ?345次閱讀

    新款Nvidia Titan GPU正在開發(fā)中?或?qū)魯∥窗l(fā)布的RTX 5090

    ABSTRACT摘要最近有消息透露,NVIDIA正在開發(fā)一款名為TITANAI的新顯卡。該顯卡基于即將推出的BlackwellGPU。在Nvidia選擇不發(fā)布其RTX40系列
    的頭像 發(fā)表于 07-26 08:26 ?402次閱讀
    新款<b class='flag-5'>Nvidia</b> Titan GPU正在<b class='flag-5'>開發(fā)</b>中?或?qū)魯∥窗l(fā)布的RTX 5090

    機智云助力小程序開發(fā):連接智能硬件與智能生活

    捷、智能的生活體驗。豐富的開發(fā)資源機智云提供了豐富的開發(fā)資源和文檔支持,為小程序開發(fā)者提供了詳盡的開發(fā)指南和示例代碼,幫助他們快速上手,實現(xiàn)智能硬件與小程序的連接。
    的頭像 發(fā)表于 06-15 08:10 ?351次閱讀
    機智云助力小程序<b class='flag-5'>開發(fā)</b>:連接智能硬件與智能生活

    使用NVIDIA Triton推理服務器來加速AI預測

    這家云計算巨頭的計算機視覺和數(shù)據(jù)科學服務使用 NVIDIA Triton 推理服務器來加速 AI 預測。
    的頭像 發(fā)表于 02-29 14:04 ?532次閱讀

    在AMD GPU上如何安裝和配置triton?

    最近在整理python-based的benchmark代碼,反過來在NV的GPU上又把Triton裝了一遍,發(fā)現(xiàn)Triton的github repo已經(jīng)給出了對應的llvm的commit id以及對應的編譯細節(jié),然后跟著走了一遍,也順利的安裝成功,只需要按照如下方式即可完
    的頭像 發(fā)表于 02-22 17:04 ?2190次閱讀
    在AMD GPU上如何安裝和配置<b class='flag-5'>triton</b>?

    【BBuf的CUDA筆記】OpenAI Triton入門筆記一

    這里來看官方的介紹:https://openai.com/research/triton ,從官方的介紹中我們可以看到OpenAI Triton的產(chǎn)生動機以及它的目標是什么,還可以看到一些經(jīng)典算法的實現(xiàn)例子展示。
    的頭像 發(fā)表于 01-23 10:00 ?2441次閱讀
    【BBuf的CUDA筆記】OpenAI <b class='flag-5'>Triton</b>入門筆記一

    利用NVIDIA產(chǎn)品技術(shù)組合提升用戶體驗

    本案例通過利用NVIDIA TensorRT-LLM加速指令識別深度學習模型,并借助NVIDIA Triton推理服務器在NVIDIA V100 GPU上進行高效部署,幫助必優(yōu)科技的文
    的頭像 發(fā)表于 01-17 09:30 ?633次閱讀

    一塊板即輕松搞定!| TH244A001 - 32位Arduino開發(fā)資源進階介紹(2)

    一塊板即輕松搞定! TH244A001 - 32位Arduino開發(fā)資源進階介紹(2) 在前一篇文章中\(zhòng)"TH244A001 - 32位Arduino開發(fā)資源進階介紹(1
    發(fā)表于 01-12 11:54

    NVIDIA DOCA 2.5 長期支持版本發(fā)布

    基礎(chǔ)設(shè)施開發(fā)者的全面軟件框架,NVIDIA DOCA 已被領(lǐng)先的云服務提供商、企業(yè)和 ISV 創(chuàng)新者所采用,為開發(fā)、優(yōu)化和部署基于 NVIDIA BlueField
    的頭像 發(fā)表于 12-26 18:25 ?371次閱讀
    <b class='flag-5'>NVIDIA</b> DOCA 2.5 長期支持版本發(fā)布

    TH244A001 - 32位Arduino開發(fā)資源進階介紹(1)

    TH244A001 - 32位Arduino開發(fā)資源進階介紹(1) Arduino輕松開發(fā)Arduino是一款便捷靈活、方便上手的開源電子原型平臺。最主要的優(yōu)勢是省略了繁瑣的底層開發(fā),讓用戶可以
    發(fā)表于 12-21 19:17

    什么是Triton-shared?Triton-shared的安裝和使用

    經(jīng)過前面幾章關(guān)于triton在nv gpu上調(diào)優(yōu)的講解,我們這章開始來看看triton的一個third_party庫,該庫是為了讓triton去支持更多其他的backend。該項目的地址如下所示
    的頭像 發(fā)表于 12-19 09:47 ?1060次閱讀
    什么是<b class='flag-5'>Triton</b>-shared?<b class='flag-5'>Triton</b>-shared的安裝和使用

    Triton編譯器的原理和性能

    Triton是一種用于編寫高效自定義深度學習原語的語言和編譯器。Triton的目的是提供一個開源環(huán)境,以比CUDA更高的生產(chǎn)力編寫快速代碼,但也比其他現(xiàn)有DSL具有更大的靈活性。Triton已被采用
    的頭像 發(fā)表于 12-16 11:22 ?2645次閱讀
    <b class='flag-5'>Triton</b>編譯器的原理和性能

    NVIDIA 知乎精彩問答甄選 | 查看關(guān)于 NVIDIA Omniverse 的相關(guān)精彩問答

    甄選問答將為您分享? NVIDIA Omniverse 的相關(guān)精彩問答 Q: NVIDIA 全新的 Omniverse Cloud API 有何亮點? A: NVIDIA 將為開發(fā)者和
    的頭像 發(fā)表于 12-01 18:40 ?430次閱讀
    <b class='flag-5'>NVIDIA</b> 知乎精彩問答甄選 | 查看關(guān)于 <b class='flag-5'>NVIDIA</b> Omniverse 的相關(guān)精彩問答