[發(fā)明專利]一種基于張量的深度學(xué)習(xí)GPU內(nèi)存管理優(yōu)化方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201911105147.6 | 申請日: | 2019-11-12 |
| 公開(公告)號: | CN111078395B | 公開(公告)日: | 2023-06-20 |
| 發(fā)明(設(shè)計)人: | 石宣化;彭軒;金海;代虎林;馬瑋良;熊倩 | 申請(專利權(quán))人: | 華中科技大學(xué) |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50;G06F15/167 |
| 代理公司: | 北京之于行知識產(chǎn)權(quán)代理有限公司 11767 | 代理人: | 何志欣 |
| 地址: | 430074 湖北*** | 國省代碼: | 湖北;42 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 張量 深度 學(xué)習(xí) gpu 內(nèi)存 管理 優(yōu)化 方法 系統(tǒng) | ||
1.一種基于張量的深度學(xué)習(xí)GPU內(nèi)存管理優(yōu)化方法,至少包括如下步驟:
執(zhí)行至少一個計算操作,其中,所述計算操作以張量為輸入并產(chǎn)生張量作為輸出;
在一個計算操作被執(zhí)行時,對張量的訪問信息進行跟蹤,并基于所述訪問信息制定內(nèi)存管理優(yōu)化決策,
其特征在于,
在訓(xùn)練的第一次迭代中被動地在CPU內(nèi)存和GPU內(nèi)存之間進行內(nèi)存交換以獲得一次完整迭代的張量的訪問信息;
所述獲得一次完整迭代的張量的訪問信息至少包括如下步驟:
(1)構(gòu)建張量訪問信息表,使得每當(dāng)張量被訪問時,張量的訪問信息能夠存儲至所述張量訪問信息表,
(2)當(dāng)產(chǎn)生內(nèi)存溢出時,從張量訪問信息表中最開始尋找一個或多個張量,被動交換出GPU內(nèi)存直至此次內(nèi)存溢出消失,并記錄此次交換對應(yīng)的CPU內(nèi)存地址,
(3)當(dāng)產(chǎn)生張量訪問錯誤時,確定其對應(yīng)的CPU內(nèi)存地址,并將其被動地交換進GPU內(nèi)存,
(4)當(dāng)一次迭代結(jié)束時,將張量的訪問信息的時間戳減去其前面所有被動內(nèi)存交換的時間以得到一次完整迭代的張量的訪問信息;
根據(jù)獲取的關(guān)于完整迭代的張量的訪問信息,制定內(nèi)存管理優(yōu)化決策;
在后續(xù)迭代中,根據(jù)運行時的反饋對制定的內(nèi)存管理優(yōu)選決策進行動態(tài)調(diào)整。
2.根據(jù)權(quán)利要求1所述的深度學(xué)習(xí)GPU內(nèi)存管理優(yōu)化方法,其特征在于,獲得一次完整迭代的張量的訪問信息至少包括如下步驟:
構(gòu)建張量訪問信息表,使得每當(dāng)張量被訪問時,張量的訪問信息能夠存儲至所述張量訪問信息表;
當(dāng)產(chǎn)生內(nèi)存溢出時,基于張量被訪問時的時間戳的先后順序,依次從所述張量訪問信息表中篩選出一個或多個張量,使得所述一個或多個張量在被動交換出GPU內(nèi)存而進入CPU內(nèi)存時,所述內(nèi)存溢出能夠被消除,其中,所述一個或多個張量在被動交換后所對應(yīng)的CPU內(nèi)存地址能夠形成記錄;
當(dāng)產(chǎn)生張量訪問錯誤時,基于所述記錄確定該張量對應(yīng)的CPU內(nèi)存地址,并將該張量被動地交換進GPU內(nèi)存;
當(dāng)一次迭代結(jié)束時,將張量的訪問信息的時間戳減去其前面所有被動內(nèi)存交換的時間以得到一次完整迭代的張量的訪問信息。
3.根據(jù)權(quán)利要求2所述的深度學(xué)習(xí)GPU內(nèi)存管理優(yōu)化方法,其特征在于,制定內(nèi)存管理優(yōu)化決策至少包括如下步驟:
根據(jù)確定的張量的訪問信息,獲得用于內(nèi)存優(yōu)化的若干個候選張量;
獲取候選張量的空閑時間,為空閑時間最大的候選張量選擇內(nèi)存換入的觸發(fā)張量訪問,并分別計算出內(nèi)存交換操作所需的第一開銷和重計算操作所需的第二開銷,其中,在第一開銷小于第二開銷的情況下,為該候選張量配置內(nèi)存交換操作,或者在第一開銷大于第二開銷的情況下,為該候選張量配置重計算操作;
根據(jù)選擇的空閑時間最大的候選張量更新剩余候選張量的空閑時間;
重復(fù)上述步驟,直至選擇出來的候選張量的大小滿足內(nèi)存減小的需求。
4.根據(jù)權(quán)利要求3所述的深度學(xué)習(xí)GPU內(nèi)存管理優(yōu)化方法,其特征在于,對內(nèi)存管理優(yōu)化決策進行動態(tài)調(diào)整至少包括如下步驟:
在張量被訪問時,檢查其狀態(tài),其中,在該張量處于正在換入GPU內(nèi)存的狀態(tài)的情況下,向前調(diào)整該張量的內(nèi)存換入的觸發(fā)張量訪問,并使其在下次迭代時生效。
5.根據(jù)權(quán)利要求4所述的深度學(xué)習(xí)GPU內(nèi)存管理優(yōu)化方法,其特征在于,獲取候選張量的空閑時間至少包括如下步驟:
確定張量被換出GPU內(nèi)存的時間戳和被換入GPU內(nèi)存的時間戳;
基于公式確定張量所需的交換時間,其中,Tmem為張量所占的內(nèi)存大小,Bpcie為GPU和CPU間的PCI-e帶寬;
基于張量被換出GPU內(nèi)存的時間戳與所述交換時間之和,確定張量換出GPU內(nèi)存的結(jié)束時間;
基于張量換入GPU內(nèi)存的時間戳與所述交換時間之差,確定張量最遲需要開始換入GPU內(nèi)存的開始時間;
基于所述開始時間與所述結(jié)束時間之差,確定所述空閑時間。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華中科技大學(xué),未經(jīng)華中科技大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911105147.6/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 根據(jù)用戶學(xué)習(xí)效果動態(tài)變化下載學(xué)習(xí)數(shù)據(jù)的系統(tǒng)及方法
- 用于智能個人化學(xué)習(xí)服務(wù)的方法
- 漸進式學(xué)習(xí)管理方法及漸進式學(xué)習(xí)系統(tǒng)
- 輔助學(xué)習(xí)的方法及裝置
- 基于人工智能的課程推薦方法、裝置、設(shè)備及存儲介質(zhì)
- 基于強化學(xué)習(xí)的自適應(yīng)移動學(xué)習(xí)路徑生成方法
- 一種線上視頻學(xué)習(xí)系統(tǒng)
- 一種基于校園大數(shù)據(jù)的自適應(yīng)學(xué)習(xí)方法、裝置及設(shè)備
- 一種學(xué)習(xí)方案推薦方法、裝置、設(shè)備和存儲介質(zhì)
- 游戲?qū)W習(xí)效果評測方法及系統(tǒng)





