System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() av无码久久久久不卡免费网站,曰韩人妻无码一区二区三区综合部,免费看国产成年无码AV片
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    一種GPU自適應(yīng)內(nèi)存優(yōu)化方法、裝置、設(shè)備及介質(zhì)制造方法及圖紙

    技術(shù)編號:44186863 閱讀:11 留言:0更新日期:2025-02-06 18:27
    本申請?zhí)峁┮环NGPU自適應(yīng)內(nèi)存優(yōu)化方法、裝置、設(shè)備及介質(zhì),涉及計算機體系結(jié)構(gòu)技術(shù)領(lǐng)域,包括:獲取目標稀疏矩陣;對目標稀疏矩陣進行優(yōu)化,得到多個優(yōu)化后的子塊矩陣;針對任一優(yōu)化后的子塊矩陣,基于GPU包含的多個最小內(nèi)存單元,為優(yōu)化后的子塊矩陣對應(yīng)的各數(shù)組均分配同一個目標最小內(nèi)存單元;針對任一優(yōu)化后的子塊矩陣的任一數(shù)組,計算數(shù)組在相應(yīng)的目標最小內(nèi)存單元中的內(nèi)存起始地址和內(nèi)存終止地址,得到數(shù)組的目標存儲地址;將各個數(shù)組存儲到相應(yīng)的目標存儲地址,得到優(yōu)化后的GPU內(nèi)存。本申請?zhí)岣吡薌PU內(nèi)存的使用效率,節(jié)省了GPU內(nèi)存,并提高了計算時的數(shù)據(jù)局部性,加快了基于分塊矩陣計算函數(shù)的速度。

    【技術(shù)實現(xiàn)步驟摘要】

    本申請涉及計算機體系結(jié)構(gòu),具體而言,涉及一種gpu自適應(yīng)內(nèi)存優(yōu)化方法、裝置、設(shè)備及介質(zhì)。


    技術(shù)介紹

    1、稀疏矩陣向量乘(spmv)和稀疏矩陣乘法(spmm)是在計算科學和工程領(lǐng)域中廣泛使用的重要數(shù)學運算。在這兩種運算中,矩陣被表示為稀疏矩陣,即大部分元素為零。這種稀疏矩陣的特點使得在處理大規(guī)模數(shù)據(jù)時能夠有效地節(jié)省內(nèi)存和計算資源。而由于spmv和spmm操作的不規(guī)則性以及相關(guān)存儲器存儲帶寬的有限性,導致在gpu上實現(xiàn)更快并行的spmv以及spmm操作具有很大的挑戰(zhàn)性,現(xiàn)有技術(shù)目前主要通過分塊處理稀疏矩陣進行spmv和spmm的加速計算。

    2、雖然分塊處理稀疏矩陣具備提高密集向量的數(shù)據(jù)局限性、更容易實現(xiàn)負載均衡以及更加簡便和靈活等優(yōu)勢,但是也存在如下問題:

    3、首先,將稀疏矩陣劃分為多個較小的分塊可以更細膩地分配任務(wù),容易實現(xiàn)負載均衡,但會增加通信開銷。

    4、其次,spmv和spmm等函數(shù)的子塊內(nèi)部的稀疏格式的數(shù)據(jù)結(jié)構(gòu)通常包括多個數(shù)組,現(xiàn)有技術(shù)均是將多個數(shù)組分別進行malloc,而由于子塊通常很小以及子塊通常是稀疏矩陣,所以,每個數(shù)組所需要的內(nèi)存大小實際上很小,都會遠小于所申請的內(nèi)存單元;這導致生成的多個gpu內(nèi)存單元內(nèi)部存在巨大的內(nèi)存碎片,極大的浪費了gpu寶貴的內(nèi)存資源,同時還很大程度上降低了子塊內(nèi)數(shù)據(jù)的數(shù)據(jù)局部性。

    5、最后,在不同品牌的gpu上所造成的空間浪費也不同,比如,在nvidia?gpu上,每次申請分配內(nèi)存,都是以512b為基本內(nèi)存單位去進行分配的,在國產(chǎn)dcu上,每次申請分配內(nèi)存,都是以4kb為基本內(nèi)存單位去進行分配的,在分塊機制下,每個分塊內(nèi)數(shù)據(jù)結(jié)構(gòu)所對應(yīng)的數(shù)組大小遠小于上述提到的基本內(nèi)存單位;這導致在gpu上對矩陣數(shù)據(jù)應(yīng)用分塊方法時,會造成在不同品牌的gpu上顯示出較大性能差異的現(xiàn)象。


    技術(shù)實現(xiàn)思路

    1、本申請實施例的目的在于提供一種gpu自適應(yīng)內(nèi)存優(yōu)化方法、裝置、設(shè)備及介質(zhì),用以解決了現(xiàn)有技術(shù)存在的上述問題,可實現(xiàn)gpu負載均衡,在避免內(nèi)存空間浪費的前提下,最大化計算的并行性,在gpu上提高基于分塊矩陣的相關(guān)計算性能。

    2、第一方面,提供了一種gpu自適應(yīng)內(nèi)存優(yōu)化方法,該方法可以包括:

    3、獲取目標稀疏矩陣;其中,所述目標稀疏矩陣中的每一個元素包含所述元素的值以及所述元素在所述目標稀疏矩陣中的橫坐標和縱坐標;

    4、對所述目標稀疏矩陣進行優(yōu)化,得到多個優(yōu)化后的子塊矩陣;其中,任一優(yōu)化后的子塊矩陣包含至少兩個數(shù)組;

    5、針對任一優(yōu)化后的子塊矩陣,基于gpu包含的多個最小內(nèi)存單元,為所述優(yōu)化后的子塊矩陣對應(yīng)的各數(shù)組均分配同一個目標最小內(nèi)存單元;其中,所述最小內(nèi)存單元為gpu分配內(nèi)存時的最小虛擬內(nèi)存間隔;

    6、針對任一優(yōu)化后的子塊矩陣的任一數(shù)組,計算所述數(shù)組在相應(yīng)的目標最小內(nèi)存單元中的內(nèi)存起始地址和內(nèi)存終止地址,得到所述數(shù)組的目標存儲地址;

    7、將各個數(shù)組存儲到相應(yīng)的目標存儲地址,得到優(yōu)化后的gpu內(nèi)存。

    8、在一個可選的實現(xiàn)中,對所述目標稀疏矩陣進行優(yōu)化,得到多個優(yōu)化后的子塊矩陣,包括:

    9、基于gpu線程束中包含的線程數(shù)量和所述最小內(nèi)存單元的容量,對所述目標稀疏矩陣進行分塊,得到多個子塊矩陣;其中,任一子塊矩陣的行數(shù)和列數(shù)均與所述線程數(shù)量相等;

    10、提取每個子塊矩陣的矩陣特征;

    11、針對任一子塊矩陣,將所述子塊矩陣的矩陣特征輸入預(yù)先訓練好的數(shù)據(jù)存儲格式選擇模型中,得到所述子塊矩陣對應(yīng)的最優(yōu)數(shù)據(jù)存儲格式;其中,所述數(shù)據(jù)存儲格式選擇模型是基于多個不同歷史子塊矩陣以及相應(yīng)歷史子塊矩陣的最優(yōu)數(shù)據(jù)存儲格式訓練得到的;

    12、根據(jù)所述最優(yōu)數(shù)據(jù)存儲格式,對所述子塊矩陣中數(shù)據(jù)的存儲格式進行優(yōu)化,得到優(yōu)化后的子塊矩陣。

    13、在一個可選的實現(xiàn)中,根據(jù)所述最優(yōu)數(shù)據(jù)存儲格式,對所述子塊矩陣中數(shù)據(jù)的存儲格式進行優(yōu)化,得到優(yōu)化后的子塊矩陣,包括:

    14、將所述子塊矩陣中各橫坐標和各縱坐標在所述子塊矩陣中的存儲格式,轉(zhuǎn)換為所述最優(yōu)數(shù)據(jù)存儲格式,得到所述子塊矩陣的位置量行;

    15、提取所述子塊矩陣中各元素的值,作為所述子塊矩陣的元素值行;

    16、若所述位置量行中任一位置量的數(shù)據(jù)類型所需的內(nèi)存容量大于所述元素值行中任一元素值的數(shù)據(jù)類型所需的內(nèi)存容量,則將所述元素值行作為優(yōu)化后的子塊矩陣的第一行,將所述位置量行作為優(yōu)化后的子塊矩陣的第二行;

    17、若所述位置量行中任一位置量的數(shù)據(jù)類型所需的內(nèi)存容量小于所述元素值行中任一元素值的數(shù)據(jù)類型所需的內(nèi)存容量,則將所述元素值行作為優(yōu)化后的子塊矩陣的第二行,將所述位置量行作為優(yōu)化后的子塊矩陣的第一行。

    18、在一個可選的實現(xiàn)中,所述方法還包括:

    19、獲取gpu的配置信息;其中,所述gpu的配置信息包括:所述目標最小內(nèi)存單元的內(nèi)存首地址和gpu對齊規(guī)則;

    20、計算所述數(shù)組在相應(yīng)的目標最小內(nèi)存單元中的內(nèi)存起始地址和內(nèi)存終止地址,得到所述數(shù)組的目標存儲地址,包括:

    21、若所述數(shù)組為所述優(yōu)化后的子塊矩陣的第一行對應(yīng)的數(shù)組,則將相應(yīng)的目標最小內(nèi)存單元的內(nèi)存首地址作為所述數(shù)組的內(nèi)存起始地址;

    22、將所述內(nèi)存首地址、所述優(yōu)化后的子塊矩陣的第一行所需的內(nèi)存容量和所述數(shù)組的內(nèi)存補位量的和值,作為所述數(shù)組的內(nèi)存終止地址;其中,所述數(shù)組的內(nèi)存補位量是基于所述數(shù)組中數(shù)據(jù)的數(shù)據(jù)類型和所述gpu對齊規(guī)則確定的;

    23、若所述數(shù)組不是所述優(yōu)化后的子塊矩陣的第一行對應(yīng)的數(shù)組,則將所述數(shù)組對應(yīng)行的上一行對應(yīng)的內(nèi)存終止地址,作為所述數(shù)組的內(nèi)存起始地址;

    24、將所述內(nèi)存起始地址、所述數(shù)組對應(yīng)行所需的內(nèi)存容量和所述數(shù)組的內(nèi)存補位量的加和值,作為所述數(shù)組的內(nèi)存終止地址。

    25、在一個可選的實現(xiàn)中,所述目標最小內(nèi)存單元為多個最小內(nèi)存單元中的任意一個,或者為多個連續(xù)的最小內(nèi)存單元。

    26、在一個可選的實現(xiàn)中,其中,所述gpu的配置信息還包括:所述目標最小內(nèi)存單元的內(nèi)存容量;

    27、在得到多個子塊矩陣之后,所述方法還包括:

    28、計算每個子塊矩陣占用的內(nèi)存容量;

    29、從得到的多個子塊矩陣中,選取占用內(nèi)存容量最大的子塊矩陣,作為目標子塊矩陣;

    30、將所述目標最小內(nèi)存單元的內(nèi)存容量與預(yù)設(shè)內(nèi)存容量閾值相乘,得到內(nèi)存容量分塊閾值;

    31、若所述目標子塊矩陣占用的內(nèi)存容量不大于所述內(nèi)存容量分塊閾值,則執(zhí)行步驟:提取每個子塊矩陣的矩陣特征。

    32、在一個可選的實現(xiàn)中,所述方法還包括:

    33、若所述目標子塊矩陣占用的內(nèi)存容量大于所述內(nèi)存容量分塊閾值,則將所述線程數(shù)量除預(yù)設(shè)線程閾值,得到分塊參數(shù);

    34、將所述分塊參數(shù)作為各子塊矩陣的行數(shù)和列數(shù),對所述目標稀疏矩陣進行分塊,得到多個子塊矩陣,返回執(zhí)行本文檔來自技高網(wǎng)...

    【技術(shù)保護點】

    1.一種GPU自適應(yīng)內(nèi)存優(yōu)化方法,其特征在于,所述方法包括:

    2.如權(quán)利要求1所述的方法,其特征在于,對所述目標稀疏矩陣進行優(yōu)化,得到多個優(yōu)化后的子塊矩陣,包括:

    3.如權(quán)利要求2所述的方法,其特征在于,根據(jù)所述最優(yōu)數(shù)據(jù)存儲格式,對所述子塊矩陣中數(shù)據(jù)的存儲格式進行優(yōu)化,得到優(yōu)化后的子塊矩陣,包括:

    4.如權(quán)利要求3所述的方法,其特征在于,所述方法還包括:

    5.如權(quán)利要求1所述的方法,其特征在于,所述目標最小內(nèi)存單元為多個最小內(nèi)存單元中的任意一個,或者為多個連續(xù)的最小內(nèi)存單元。

    6.如權(quán)利要求2所述的方法,其特征在于,其中,所述GPU的配置信息還包括:所述最小內(nèi)存單元的內(nèi)存容量;

    7.如權(quán)利要求6所述的方法,其特征在于,所述方法還包括:

    8.一種GPU自適應(yīng)內(nèi)存優(yōu)化裝置,其特征在于,所述裝置包括:

    9.一種電子設(shè)備,其特征在于,所述電子設(shè)備包括處理器、通信接口、存儲器和通信總線,其中,處理器,通信接口,存儲器通過通信總線完成相互間的通信;

    10.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)內(nèi)存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)權(quán)利要求1-7任一所述的方法。

    ...

    【技術(shù)特征摘要】

    1.一種gpu自適應(yīng)內(nèi)存優(yōu)化方法,其特征在于,所述方法包括:

    2.如權(quán)利要求1所述的方法,其特征在于,對所述目標稀疏矩陣進行優(yōu)化,得到多個優(yōu)化后的子塊矩陣,包括:

    3.如權(quán)利要求2所述的方法,其特征在于,根據(jù)所述最優(yōu)數(shù)據(jù)存儲格式,對所述子塊矩陣中數(shù)據(jù)的存儲格式進行優(yōu)化,得到優(yōu)化后的子塊矩陣,包括:

    4.如權(quán)利要求3所述的方法,其特征在于,所述方法還包括:

    5.如權(quán)利要求1所述的方法,其特征在于,所述目標最小內(nèi)存單元為多個最小內(nèi)存單元中的任意一個,或者為多個連續(xù)的最小內(nèi)存單元。

    6.如權(quán)利...

    【專利技術(shù)屬性】
    技術(shù)研發(fā)人員:解晨浩叢興劉軼錢德沛楊海龍
    申請(專利權(quán))人:北京航空航天大學
    類型:發(fā)明
    國別省市:

    網(wǎng)友詢問留言 已有0條評論
    • 還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 亚洲精品午夜无码电影网| 中出人妻中文字幕无码| 亚洲成a人片在线观看天堂无码| 亚洲精品无码久久| 精品少妇人妻AV无码专区不卡 | 国产精品亚洲а∨无码播放麻豆| 无码激情做a爰片毛片AV片| 无码精品A∨在线观看| 亚洲AV永久无码精品一区二区国产| 无码人妻AV免费一区二区三区| 精品一区二区三区无码免费直播| 人妻无码一区二区三区AV | 中文字幕人妻无码一区二区三区| 精品亚洲AV无码一区二区| 中文字幕人妻无码专区| 亚洲a无码综合a国产av中文| av无码久久久久不卡免费网站| 亚洲精品午夜无码电影网| 亚洲精品一级无码鲁丝片| 久久久g0g0午夜无码精品| 无码人妻丰满熟妇区BBBBXXXX| 亚洲成AV人在线播放无码| 久久影院午夜理论片无码| 人妻无码久久久久久久久久久| 成人免费无码大片a毛片软件| 无码av免费毛片一区二区 | 无遮掩无码h成人av动漫| 四虎成人精品无码| 久久精品aⅴ无码中文字字幕| 亚洲成a人片在线观看无码 | 无码人妻精品一区二区三区66 | 免费无码专区毛片高潮喷水| 无码中文2020字幕二区| 亚洲av永久无码精品秋霞电影秋| 亚洲中文字幕无码av在线| 久久久久久精品无码人妻| 一本天堂ⅴ无码亚洲道久久| 亚洲a∨无码精品色午夜| 无码无需播放器在线观看| 国产精品无码翘臀在线观看| 日韩专区无码人妻|