女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

NVIDIA Triton 系列文章(10):模型并發(fā)執(zhí)行

NVIDIA英偉達(dá)企業(yè)解決方案 ? 來源:未知 ? 2023-01-05 11:55 ? 次閱讀

前面已經(jīng)做好了每個(gè)推理模型的基礎(chǔ)配置,基本上就能正常讓 Triton 服務(wù)器使用這些獨(dú)立模型進(jìn)行推理。接下來的重點(diǎn),就是要讓設(shè)備的計(jì)算資源盡可能地充分使用,首先第一件事情就是模型并發(fā)執(zhí)行(concurrent model execution)的調(diào)試,這是提升 Triton 服務(wù)器性能的最基本任務(wù)。

Triton 服務(wù)器支持的模型并發(fā)能力,包括一個(gè)模型并發(fā)多個(gè)推理實(shí)例,以及多個(gè)模型的多個(gè)并發(fā)實(shí)例。至于能并發(fā)多少實(shí)例?就需要根據(jù)系統(tǒng)上的硬件配置,Triton 支持純 CPU 以及多 GPU 的計(jì)算環(huán)境。

GPU 是能夠同時(shí)執(zhí)行多個(gè)工作負(fù)載的計(jì)算引擎,Triton 推理服務(wù)器通過在 GPU上同時(shí)運(yùn)行多個(gè)模型,最大限度地提高性能并減少端到端延遲,這些模型可以完全相同也可以是不同框架的不同模型,顯存大小是唯一限制并發(fā)運(yùn)行模型數(shù)量的因素。

下圖顯示了兩個(gè)計(jì)算模型 compute model 0 與 compute model 1 的示例,假設(shè) Triton 服務(wù)器當(dāng)前處于等待狀態(tài),當(dāng) request 0 與 request 1 兩個(gè)請求同時(shí)到達(dá)時(shí),Triton 會(huì)立即將這兩個(gè)請求調(diào)度到 GPU 上(下圖左),開始并發(fā)處理這兩個(gè)模型的推理計(jì)算。

69003688-8cac-11ed-bfe3-dac502259ad0.png

認(rèn)情況下,Triton 指定系統(tǒng)中的每個(gè)可用 GPU 為每個(gè)模型提供一個(gè)實(shí)例,如果同一模型的多個(gè)請求同時(shí)到達(dá),Triton 將通過在 GPU 上一次只調(diào)度一個(gè)請求來串行化它們的執(zhí)行(上圖中)。這樣的方式在管理上是最輕松的,但是執(zhí)行效率并不好,因?yàn)橛?jì)算性能并未被充分調(diào)用。

Triton 提供了一個(gè) “instance_group” 的模型配置選項(xiàng),通過在模型配置中使用這個(gè)字段,可以更改模型的執(zhí)行實(shí)例數(shù),調(diào)整每個(gè)模型的并發(fā)執(zhí)行數(shù)量。

上圖右就是在 model 1 配置文件中,添加 “instance_group” 配置,并且設(shè)置 “count: 3” 的參數(shù),這樣就允許一個(gè) GPU 上可以并發(fā)三個(gè)實(shí)例的模型計(jì)算,如果用戶端發(fā)出超過 3 個(gè)推理請求時(shí),則第 4 個(gè) model 1 推理請求就必須等到前三個(gè)實(shí)例中的任一個(gè)執(zhí)行完之后,才能開始執(zhí)行。

Triton可以提供一個(gè)模型的多個(gè)實(shí)例,從而可以同時(shí)處理該模型的多條推理請求。模型配置 ModelInstanceGroup 屬性用于指定應(yīng)可用的執(zhí)行實(shí)例的數(shù)量以及應(yīng)為這些實(shí)例使用的計(jì)算資源。接下來就看看幾個(gè)標(biāo)準(zhǔn)用法:

1. 單 CPU 或 GPU 單實(shí)例

未添加任何 instance_group 參數(shù)時(shí),表示這個(gè)模型使用默認(rèn)的配置,這時(shí)該模型可以在系統(tǒng)中可用的每個(gè) GPU 中創(chuàng)建單個(gè)執(zhí)行實(shí)例。如果用戶端提出多個(gè)請求時(shí),就會(huì)在 GPU 設(shè)備上按照串行方式執(zhí)行計(jì)算,如同上圖中 compute model 1 的狀態(tài)。

2. 單 CPU 或 GPU 并發(fā)多實(shí)例

實(shí)例組設(shè)置可用于在每個(gè) GPU 上或僅在某些 GPU 上放置模型的多個(gè)執(zhí)行實(shí)例。例如,以下配置將在每個(gè)系統(tǒng) GPU 上放置模型的兩個(gè)執(zhí)行實(shí)例。如果要讓模型在一個(gè) GPU 上執(zhí)行多個(gè)并行實(shí)例,就將以下的內(nèi)容寫入模型配置文件內(nèi),這里配置的是 2 個(gè)并發(fā)實(shí)例:

instance_group [ 
  { 
    count: 2 
    kind: KIND_GPU 
  } 
]
如果將上面配置的計(jì)算設(shè)備配置為 “kind:KIND_CPU” ,就是指定在 CPU 可以并發(fā)兩個(gè)推理計(jì)算。 3. 多 CPU 或 GPU 并發(fā)多實(shí)例 如果設(shè)備上有多個(gè)計(jì)算設(shè)備,不管是 CPU 或 GPU,都可以使用以下配置方式,為模型配置多個(gè)并發(fā)推理實(shí)例:
instance_group [ 
  { 
    count: 1 
    kind: KIND_GPU 
    gpus: [ 0 ] 
  }, 
  { 
    count: 2 
    kind: KIND_GPU 
    gpus: [ 1, 2 ] 
  } 
]
這里的內(nèi)容,表示 Triton 服務(wù)器至少啟動(dòng) 3 個(gè) GPU 計(jì)算設(shè)備,這個(gè)推理模型在編號為 0 的 GPU 上啟動(dòng) 1 個(gè)并發(fā)實(shí)例,在編號為 1 與 2 的 GPU 上可以同時(shí)啟動(dòng) 2 個(gè)并發(fā)實(shí)例,以此類推。 以上是 instance_group 的基礎(chǔ)配置內(nèi)容,如果要對每個(gè) GPU 設(shè)備的計(jì)算資源進(jìn)行更深層的配置,還可以配合一個(gè)“比例限制器配置(Rate Limiter Configuration)”參數(shù)設(shè)置,對于執(zhí)行實(shí)例進(jìn)行資源的限制,以便于在不同實(shí)例直接取得計(jì)算平衡。 這個(gè)比例限制器的配置,主要有以下兩部分:
  • 資源(Reousrces)限制:
這個(gè)資源主要指的是 GPU 的顯存調(diào)用,因?yàn)閿?shù)據(jù)在 CPU 與 GPU 之間的交換傳輸,經(jīng)常在整個(gè)計(jì)算環(huán)節(jié)中造成很大的影響,如果當(dāng)我們需要對同一組數(shù)據(jù)進(jìn)行不同的計(jì)算,或者計(jì)算過程中有流水線前后關(guān)系的話,那么將這些需要重復(fù)使用的數(shù)據(jù)保留在 GPU 顯存上,就能非常有效減少數(shù)據(jù)傳輸次數(shù),進(jìn)而提升計(jì)算效率。 因此我們可以對模型實(shí)例提出限制,只有當(dāng)系統(tǒng)閑置資源能滿足資源需求時(shí),才進(jìn)行這個(gè)推理模型的計(jì)算。如果模型配置里沒有提供任何資源限制的需求,那么 Triton 服務(wù)器就認(rèn)定這個(gè)模型實(shí)例的執(zhí)行并不需要任何資源,并將在模型實(shí)例可用時(shí)立即開始執(zhí)行。 這個(gè)配置項(xiàng)里有三個(gè)參數(shù)內(nèi)容: (1)“name”字段:資源名稱; (2)“count”字段:組中模型實(shí)例需要運(yùn)行的資源副本數(shù); (3)“global”字段:指定資源是按設(shè)備還是在系統(tǒng)中全局共享。 下面是一個(gè)簡單的模型配置內(nèi)容的 instance_group 參數(shù)組:
instance_group [ 
  { 
    count: 2 
    kind: KIND_GPU 
gpus: [ 0 ] 
    rate_limiter { 
      resources [ 
        { 
          name: "R1" 
          count: 4 
        } 
] 
    } 
  }, 
  { 
    count: 4 
    kind: KIND_GPU 
gpus: [ 1, 2 ] 
    rate_limiter { 
      resources [        
        { 
          name: "R2" 
          global: True 
          count: 2 
        } 
      ] 
} 
  } 
]

  • 第 1 組配置:可并發(fā)執(zhí)行數(shù)量為 2,指定使用 gpu[0] 設(shè)備,需要名為 “R1” 的計(jì)算資源,其內(nèi)容是需要 2 份設(shè)備內(nèi)存的副本;

  • 第 2 組配置:可并發(fā)執(zhí)行數(shù)量為 4,指定使用 gpu[1, 2] 兩個(gè)設(shè)備,需要名為 “R2” 的計(jì)算資源,其內(nèi)容是需要 4 份全局共享內(nèi)存的副本,

這里面的并發(fā)數(shù)量與資源配置數(shù)量并不存在線性關(guān)系,開發(fā)人員必須根據(jù)模型所需要數(shù)據(jù)的張量尺度,以及 GPU 卡顯存大小去進(jìn)行調(diào)配。 Triton 允許我們指定要為推理提供的每個(gè)模型的副本數(shù)量,默認(rèn)情況下會(huì)獲得每個(gè)模型的一個(gè)副本,但可以使用 instance_group 在模型配置中指定任意數(shù)量的實(shí)例。通常擁有一個(gè)模型的兩個(gè)實(shí)例會(huì)提高性能,因?yàn)樗试S CPU 與 GPU 之間的內(nèi)存?zhèn)鬏敳僮髋c推理計(jì)算重疊。多個(gè)實(shí)例還通過允許在 GPU 上并發(fā)更多推理工作來提高GPU 利用率。
  • 優(yōu)先級(Priority)設(shè)置:
因?yàn)橛?jì)算資源是有限的,因此也可以在資源配置是對其進(jìn)行優(yōu)先級的配置,如此也會(huì)影響實(shí)例進(jìn)行的先后順序。下面是一個(gè)簡單的優(yōu)先級配置示范:
instance_group [ 
  { 
    count: 1 
    kind: KIND_GPU 
    gpus: [ 0, 1, 2 ] 
    rate_limiter { 
      resources [ 
        { 
          name: "R1" 
          count: 4 
        }, 
        { 
          name: "R2" 
          global: True 
          count: 2 
        } 
      ] 
      priority: 2 
    } 
  } 
] 
上面配置組的 3 個(gè)模型實(shí)例,每個(gè)設(shè)備(0、1和2)上執(zhí)行一個(gè),每個(gè)實(shí)例需要 4 個(gè) “R1” 和 2 個(gè)具有全局資源的 “R2” 資源才能執(zhí)行,并將比例限制器的優(yōu)先級設(shè)置為 2。 這三個(gè)實(shí)例之間不會(huì)爭奪 “R1” 資源,因?yàn)?“R1” 對于它們自己的設(shè)備是本地的,但是會(huì)爭奪 “R2” 資源,因?yàn)樗恢付槿仲Y源,這意味著 “R2” 在整個(gè)系統(tǒng)中共享。雖然這些實(shí)例之間不爭 “R1”,但它們將與其他模型實(shí)例爭奪 “R1“,這些模型實(shí)例在資源需求中包含 “R1” 并與它們在同一設(shè)備上運(yùn)行。 這是對所有模型的所有實(shí)例進(jìn)行優(yōu)先級排序,優(yōu)先級 2 的實(shí)例將被賦予優(yōu)先級 1 的實(shí)例 1/2 的調(diào)度機(jī)會(huì)數(shù)。 以上是關(guān)于 Triton 服務(wù)器“模型并發(fā)執(zhí)行”的基礎(chǔ)內(nèi)容,后面還有更多關(guān)于調(diào)度器(scheduler)與批量處理器(batcher)的配合內(nèi)容,能更進(jìn)一步地協(xié)助開發(fā)人員調(diào)試系統(tǒng)的總體性能。


原文標(biāo)題:NVIDIA Triton 系列文章(10):模型并發(fā)執(zhí)行

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


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

    關(guān)注

    22

    文章

    3921

    瀏覽量

    93109

原文標(biāo)題:NVIDIA Triton 系列文章(10):模型并發(fā)執(zhí)行

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

收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    【幸狐Omni3576邊緣計(jì)算套件試用體驗(yàn)】幸狐Omni3576開發(fā)板移植YOLOV10和推理測試

    /rknn_model_zoo.git (二)下載模型 執(zhí)行如下命令下載ONNX模型用于轉(zhuǎn)換。 chmod a+x download_model.sh ./download_model.sh (三)
    發(fā)表于 05-24 12:27

    英偉達(dá)GTC25亮點(diǎn):NVIDIA Dynamo開源庫加速并擴(kuò)展AI推理模型

    Triton 推理服務(wù)器的后續(xù)產(chǎn)品,NVIDIA Dynamo 是一款全新的 AI 推理服務(wù)軟件,旨在為部署推理 AI 模型的 AI 工廠最大化其 token 收益。它協(xié)調(diào)并加速數(shù)千個(gè) GPU 之間的推理通信,并使用分離服務(wù)將
    的頭像 發(fā)表于 03-20 15:03 ?544次閱讀

    NVIDIA技術(shù)助力Pantheon Lab數(shù)字人實(shí)時(shí)交互解決方案

    NVIDIA Triton,Pantheon Lab 訓(xùn)練速度提高 10 倍、推理延遲降低 50%,以及用戶參與度提升 30%。這些進(jìn)步使對話式 AI 能夠提供實(shí)時(shí)且真實(shí)的互動(dòng),使 Pantheon Lab 在數(shù)字人技術(shù)不斷革
    的頭像 發(fā)表于 01-14 11:19 ?564次閱讀

    NVIDIA推出開放式Llama Nemotron系列模型

    作為 NVIDIA NIM 微服務(wù),開放式 Llama Nemotron 大語言模型和 Cosmos Nemotron 視覺語言模型可在任何加速系統(tǒng)上為 AI 智能體提供強(qiáng)效助力。
    的頭像 發(fā)表于 01-09 11:11 ?627次閱讀

    NVIDIA推出面向RTX AI PC的AI基礎(chǔ)模型

    NVIDIA 今日發(fā)布能在 NVIDIA RTX AI PC 本地運(yùn)行的基礎(chǔ)模型,為數(shù)字人、內(nèi)容創(chuàng)作、生產(chǎn)力和開發(fā)提供強(qiáng)大助力。
    的頭像 發(fā)表于 01-08 11:01 ?478次閱讀

    NVIDIA Cosmos世界基礎(chǔ)模型平臺發(fā)布

    NVIDIA 宣布推出NVIDIA Cosmos,該平臺由先進(jìn)的生成式世界基礎(chǔ)模型、高級 tokenizer、護(hù)欄和加速視頻處理管線組成,將推動(dòng)自動(dòng)駕駛汽車(AV)和機(jī)器人等物理 AI 系統(tǒng)的發(fā)展。
    的頭像 發(fā)表于 01-08 10:39 ?482次閱讀

    Triton編譯器與GPU編程的結(jié)合應(yīng)用

    Triton編譯器簡介 Triton編譯器是一種針對并行計(jì)算優(yōu)化的編譯器,它能夠自動(dòng)將高級語言代碼轉(zhuǎn)換為針對特定硬件優(yōu)化的低級代碼。Triton編譯器的核心優(yōu)勢在于其能夠識別并行模式,自動(dòng)進(jìn)行代碼
    的頭像 發(fā)表于 12-25 09:13 ?734次閱讀

    Triton編譯器如何提升編程效率

    在現(xiàn)代軟件開發(fā)中,編譯器扮演著至關(guān)重要的角色。它們不僅將高級語言代碼轉(zhuǎn)換為機(jī)器可執(zhí)行的代碼,還通過各種優(yōu)化技術(shù)提升程序的性能。Triton 編譯器作為一種先進(jìn)的編譯器,通過多種方式提升編程效率,使得
    的頭像 發(fā)表于 12-25 09:12 ?676次閱讀

    Triton編譯器的優(yōu)化技巧

    在現(xiàn)代計(jì)算環(huán)境中,編譯器的性能對于軟件的運(yùn)行效率至關(guān)重要。Triton 編譯器作為一個(gè)先進(jìn)的編譯器框架,提供了一系列的優(yōu)化技術(shù),以確保生成的代碼既高效又適應(yīng)不同的硬件架構(gòu)。 1. 指令選擇
    的頭像 發(fā)表于 12-25 09:09 ?779次閱讀

    Triton編譯器的優(yōu)勢與劣勢分析

    Triton編譯器作為一種新興的深度學(xué)習(xí)編譯器,具有一系列顯著的優(yōu)勢,同時(shí)也存在一些潛在的劣勢。以下是對Triton編譯器優(yōu)勢與劣勢的分析: 優(yōu)勢 高效性能優(yōu)化 : Triton編譯器
    的頭像 發(fā)表于 12-25 09:07 ?1032次閱讀

    Triton編譯器在機(jī)器學(xué)習(xí)中的應(yīng)用

    1. Triton編譯器概述 Triton編譯器是NVIDIA Triton推理服務(wù)平臺的一部分,它負(fù)責(zé)將深度學(xué)習(xí)模型轉(zhuǎn)換為優(yōu)化的格式,以便
    的頭像 發(fā)表于 12-24 18:13 ?874次閱讀

    Triton編譯器功能介紹 Triton編譯器使用教程

    Triton 是一個(gè)開源的編譯器前端,它支持多種編程語言,包括 C、C++、Fortran 和 Ada。Triton 旨在提供一個(gè)可擴(kuò)展和可定制的編譯器框架,允許開發(fā)者添加新的編程語言特性和優(yōu)化技術(shù)
    的頭像 發(fā)表于 12-24 17:23 ?1498次閱讀

    NVIDIA推出全新生成式AI模型Fugatto

    NVIDIA 開發(fā)了一個(gè)全新的生成式 AI 模型。利用輸入的文本和音頻,該模型可以創(chuàng)作出包含任意的音樂、人聲和聲音組合的作品。
    的頭像 發(fā)表于 11-27 11:29 ?736次閱讀

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

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

    NVIDIA Nemotron-4 340B模型幫助開發(fā)者生成合成訓(xùn)練數(shù)據(jù)

    Nemotron-4 340B 是針對 NVIDIA NeMo 和 NVIDIA TensorRT-LLM 優(yōu)化的模型系列,該系列包含最先進(jìn)
    的頭像 發(fā)表于 09-06 14:59 ?616次閱讀
    <b class='flag-5'>NVIDIA</b> Nemotron-4 340B<b class='flag-5'>模型</b>幫助開發(fā)者生成合成訓(xùn)練數(shù)據(jù)