[發(fā)明專利]一種多策略內(nèi)存分段拷貝優(yōu)化方法、裝置及介質(zhì)在審
| 申請?zhí)枺?/td> | 202211521391.2 | 申請日: | 2022-11-30 |
| 公開(公告)號(hào): | CN115905048A | 公開(公告)日: | 2023-04-04 |
| 發(fā)明(設(shè)計(jì))人: | 黃亮明;張靜;姜軍;蔣麗萍;鄧潔 | 申請(專利權(quán))人: | 無錫先進(jìn)技術(shù)研究院 |
| 主分類號(hào): | G06F12/0886 | 分類號(hào): | G06F12/0886;G06F12/121 |
| 代理公司: | 南京縱橫知識(shí)產(chǎn)權(quán)代理有限公司 32224 | 代理人: | 鐘昕宇 |
| 地址: | 214000 江蘇省無錫市濱*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 策略 內(nèi)存 分段 拷貝 優(yōu)化 方法 裝置 介質(zhì) | ||
本發(fā)明提供一種多策略內(nèi)存分段拷貝優(yōu)化方法、裝置及介質(zhì),能夠提高拷貝性能。方法包括以下步驟:獲取待拷貝數(shù)據(jù),根據(jù)訪存指令特性,判斷源目地址對界屬性,若目的地址非R字節(jié)對界,則使用標(biāo)量拷貝指令處理至目的地址R字節(jié)對界;獲取待拷貝數(shù)據(jù)的長度,并根據(jù)待拷貝數(shù)據(jù)的長度進(jìn)行區(qū)分,針對各區(qū)間特性,采用不同優(yōu)化手段,以實(shí)現(xiàn)分段多策略拷貝優(yōu)化。
技術(shù)領(lǐng)域
本發(fā)明涉及一種多策略內(nèi)存分段拷貝優(yōu)化方法、裝置及介質(zhì),屬于字節(jié)拷貝技術(shù)領(lǐng)域。
背景技術(shù)
內(nèi)存拷貝廣泛應(yīng)用于計(jì)算機(jī)數(shù)據(jù)處理。現(xiàn)階段內(nèi)存拷貝有多種方法,其中一種有代表性的是高位寬指令優(yōu)先策略的memcpy函數(shù)優(yōu)化方法,先使用單字節(jié)拷貝指令使得源/目的地址至少一個(gè)滿足系統(tǒng)支持最高位寬指令的對界屬性,另一個(gè)地址按照當(dāng)前對界屬性能匹配的最高字節(jié)長度(不大于系統(tǒng)最高位寬指令)對應(yīng)指令進(jìn)行拷貝,這樣勢必存在該地址使用單字節(jié)或兩字節(jié)等固定字節(jié)且較小指令完成循環(huán)拷貝的情況。另一種有代表性的是16/64字節(jié)分段的內(nèi)存加速拷貝方法,其中低于16字節(jié)采用單字節(jié)拷貝,介于16與64之間采用4字節(jié),高于64字節(jié)采用4字節(jié)連續(xù)拷貝16次進(jìn)行加速。以上研究更多的是考慮高位寬指令或簡單分段模式,未充分利用待拷貝數(shù)據(jù)的長度范圍與處理器支持的結(jié)構(gòu)特性進(jìn)行優(yōu)化。
現(xiàn)有技術(shù)中,存在相關(guān)專利:一種memcpy函數(shù)的優(yōu)化方法;專利申請?zhí)枺?01310408259.5;
一種加快內(nèi)存拷貝速度的方法;專利申請?zhí)枺篊N201010133607.9。
但是,現(xiàn)有內(nèi)存拷貝方法,在待拷貝數(shù)據(jù)的長度范圍較廣情況下,無法精準(zhǔn)地針對不同數(shù)據(jù)段進(jìn)行定制性拷貝:
1.由于待拷貝數(shù)據(jù)的長度不固定,并且目前內(nèi)存拷貝方法未針對較廣的長度范圍進(jìn)行充分分段,導(dǎo)致較大、較小的待拷貝數(shù)據(jù)的長度均使用固定策略;
2.在待拷貝數(shù)據(jù)的長度較大情形下,由于現(xiàn)有拷貝指令的位寬固定,無法進(jìn)行高效拷貝;在待拷貝數(shù)據(jù)的長度較小情形下,當(dāng)前仍采用單字節(jié)循環(huán)拷貝,導(dǎo)致循環(huán)與判斷的開銷占比較大;
3.當(dāng)前拷貝方法對處理器支持的存儲(chǔ)結(jié)構(gòu)特性利用不充分。
現(xiàn)階段內(nèi)存拷貝優(yōu)化手段較為簡單且不夠靈活,且未充分結(jié)合處理器特性,導(dǎo)致收益不高。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)中的不足,提供一種多策略內(nèi)存分段拷貝優(yōu)化方法、裝置及介質(zhì),能夠提高拷貝性能。
為達(dá)到上述目的,本發(fā)明是采用下述技術(shù)方案實(shí)現(xiàn)的:
第一方面,本發(fā)明提供了一種多策略內(nèi)存分段拷貝優(yōu)化方法,包括以下步驟:
步驟1:獲取待拷貝數(shù)據(jù),根據(jù)訪存指令特性,判斷源目地址對界屬性,若目的地址非R字節(jié)對界,則使用標(biāo)量拷貝指令處理至目的地址R字節(jié)對界后,再跳轉(zhuǎn)到步驟2,若目的地址R字節(jié)對界,則直接跳轉(zhuǎn)到步驟2;
步驟2:獲取待拷貝數(shù)據(jù)的長度,并根據(jù)待拷貝數(shù)據(jù)的長度進(jìn)行區(qū)分,針對各區(qū)間特性,采用不同優(yōu)化手段,以實(shí)現(xiàn)分段多策略拷貝優(yōu)化。
進(jìn)一步的,本方法基于多級(jí)存儲(chǔ)結(jié)構(gòu)的處理器,包含核內(nèi)(L1,L2級(jí))Cache與核外(L3級(jí))Cache。
進(jìn)一步的,根據(jù)待拷貝數(shù)據(jù)的長度進(jìn)行區(qū)分,針對各區(qū)間特性,采用不同優(yōu)化手段,以實(shí)現(xiàn)分段多策略拷貝優(yōu)化,包括:
步驟a:根據(jù)處理器特性以及標(biāo)量訪存指令處理字長,設(shè)置效率閾值A(chǔ)(A的取值等于X字節(jié)標(biāo)量訪存處理單元大小)。判斷要拷貝的待拷貝數(shù)據(jù)的長度與效率閾值A(chǔ)的大小關(guān)系,若待拷貝數(shù)據(jù)的長度小于A,則跳轉(zhuǎn)到步驟b,若大于等于A,則跳轉(zhuǎn)到步驟c;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于無錫先進(jìn)技術(shù)研究院,未經(jīng)無錫先進(jìn)技術(shù)研究院許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202211521391.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
- 一種計(jì)算機(jī)網(wǎng)絡(luò)策略管理系統(tǒng)及策略管理方法
- 應(yīng)用于合法監(jiān)聽系統(tǒng)的網(wǎng)絡(luò)策略架構(gòu)及其策略處理方法
- 分發(fā)策略的方法、系統(tǒng)和策略分發(fā)實(shí)體
- 策略控制方法、策略規(guī)則決策設(shè)備和策略控制設(shè)備
- 用于控制QoS策略沖突的方法、設(shè)備和系統(tǒng)
- 策略融合的方法、UE及服務(wù)器
- 策略調(diào)整觸發(fā)、策略調(diào)整方法及裝置、策略調(diào)整系統(tǒng)
- 設(shè)備策略管理器
- 策略組中的策略評估、策略選擇方法及裝置
- 策略集群分發(fā)匹配方法、系統(tǒng)及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)





