[發明專利]一種基于CUDA的GPU資源分配方法、系統、終端及存儲介質有效
| 申請號: | 202010688551.7 | 申請日: | 2020-07-16 |
| 公開(公告)號: | CN112000463B | 公開(公告)日: | 2022-11-25 |
| 發明(設計)人: | 劉曉健 | 申請(專利權)人: | 蘇州浪潮智能科技有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 濟南舜源專利事務所有限公司 37205 | 代理人: | 孫玉營 |
| 地址: | 215100 江蘇省蘇州市吳*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 cuda gpu 資源 分配 方法 系統 終端 存儲 介質 | ||
本發明提供一種基于CUDA的GPU資源分配方法、系統、終端及存儲介質,包括:對共享GPU資源的集群啟用CUDA平臺的統一內存機制;通過所述統一內存機制截取所述集群的每個節點的內存管理接口;設置所述統一內存機制的隔離閾值,根據所述隔離閾值通過所述內存管理接口占用節點的內存;將占用的節點內存作為同節點上GPU的顯存資源分配給GPU任務。本發明通過CUDA統一內存與共享GPU資源機制設置相結合,提高GPU利用率和使用效率,提高AI平臺進行訓練任務的規模并保證平臺高效運行。
技術領域
本發明涉及AI平臺技術領域,具體涉及一種基于CUDA的GPU資源分配方法、系統、終端及存儲介質。
背景技術
隨著用于AI平臺及深度學習任務的數據量的增加以及對于訓練速度要求的提高,資源配置及算力要求也越來越高。此外,隨著AI平臺GPU服務器集群的整體規模逐步擴大,集群中使用率較高,且較為稀缺的資源,GPU的利用率通常決定了深度學習任務訓練的整體效率。所以如何更加有效的使用GPU資源,提升GPU資源利用率顯得尤為重要。
目前大部分深度學習訓練在使用GPU資源的時候,是以單塊GPU卡為最小的資源使用粒度。但是單個訓練任務占用一個GPU卡的情況下,訓練過程中占用的GPU顯存遠遠低于單塊GPU顯存大小,從而導致GPU資源利用率較低。
為了提交GPU資源利用率,對訓練任務占用GPU顯存規模進行分析后,按照一定粒度拆分GPU顯存從而使得一個GPU卡被多個任務使用,就顯得很有必要。現有技術已經存在定義顯存粒度,隔離出多個GPU顯存,來實現GPU共享的方式。但該方法只將GPU資源顯存信息(單塊GPU卡顯存目前主流是32G)進行劃分隔離,當GPU顯存不夠時,會直接報出OOM錯誤,導致任務運行失敗,并且根據顯存粒度劃分的GPU復用情況較低。
發明內容
針對現有技術的上述不足,本發明提供一種基于CUDA的GPU資源分配方法、系統、終端及存儲介質,以解決上述技術問題。
第一方面,本發明提供一種基于CUDA的GPU資源分配方法,包括:
對共享GPU資源的集群啟用CUDA平臺的統一內存機制;
通過所述統一內存機制截取所述集群的每個節點的內存管理接口;
設置所述統一內存機制的隔離閾值,根據所述隔離閾值通過所述內存管理接口占用節點的內存;
將占用的節點內存作為同節點上GPU的顯存資源分配給GPU任務。
進一步的,所述根據隔離閾值通過所述內存管理接口占用節點的內存,包括:
獲取節點上的單張GPU的顯存容量;
計算所述顯存容量與所述隔離閾值的乘積,所述隔離閾值為所述顯存容量的倍數,計算所述乘積與所述顯存容量的差值,將所述差值作為需要占用的內存容量輸出。
進一步的,所述將占用的節點內存作為同節點上GPU的顯存資源分配給GPU任務,包括:
預先設置顯存粒度;
將所述乘積作為單張GPU的總顯存,計算所述總顯存除以顯存粒度的商,將所述商作為復用情況輸出;
根據所述復用情況控制調度器向GPU調度相應數量的容器。
進一步的,所述方法還包括:
將集群各節點上GPU信息保存至GPU信息表,并創建GPU顯存信息表;
建立已分配容器任務ID與運行節點上的GPU的UUID對應關系,并建立已分配容器ID與GPU顯存的對應關系;
判斷運行在GPU的容器執行任務時的顯存利用最大值是否持續超過所述顯存粒度:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于蘇州浪潮智能科技有限公司,未經蘇州浪潮智能科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010688551.7/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:鱗甲油滴建盞制作工藝
- 下一篇:一種礦山井筒抗震支護方法





