欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于異構(gòu)架構(gòu)下DPU加速卡的解壓實(shí)現(xiàn)方法和裝置與流程

文檔序號:40563884發(fā)布日期:2025-01-03 11:24閱讀:9來源:國知局
一種基于異構(gòu)架構(gòu)下DPU加速卡的解壓實(shí)現(xiàn)方法和裝置與流程

本發(fā)明涉及異構(gòu)架構(gòu)下的解碼實(shí)現(xiàn),尤其涉及一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)方法和裝置。


背景技術(shù):

1、隨著技術(shù)的發(fā)展,磁盤讀寫、網(wǎng)絡(luò)帶寬性能的不斷提升,數(shù)據(jù)庫和大數(shù)據(jù)領(lǐng)域的性能瓶頸已轉(zhuǎn)移到算力上,而現(xiàn)有的cpu方案無法提供足夠的算力以支撐現(xiàn)有的大數(shù)據(jù)業(yè)務(wù)規(guī)模。

2、現(xiàn)有的解壓算法,如snappy解壓的缺點(diǎn)主要包括:(1)snappy解壓功能目前只能應(yīng)用于cpu場景,依托于cpu服務(wù)器調(diào)用解壓函數(shù)。也就是說目前snappy解壓工作只能在cpu服務(wù)器上實(shí)現(xiàn);(2)cpu指令集架構(gòu)無法高效的快速的對大量snappy壓縮數(shù)據(jù)進(jìn)行解壓操作;(3)cpu解壓過程會產(chǎn)生很高的cpu占用率,使得服務(wù)器無法進(jìn)行其他的任務(wù)。

3、因此,如何借助異構(gòu)系統(tǒng)搭建更強(qiáng)算例的解壓實(shí)現(xiàn)方案,是一個(gè)亟待解決的技術(shù)問題。


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

1、鑒于此,本發(fā)明實(shí)施例提供了一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)方法,以消除或改善現(xiàn)有技術(shù)中存在的一個(gè)或更多個(gè)缺陷。

2、本發(fā)明的一個(gè)方面提供了一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)方法,dpu加速卡與cpu服務(wù)器建立連接組成異構(gòu)系統(tǒng),dpu加速卡包含ddr存儲單元和加速核,所述方法包括以下步驟:

3、dpu加速卡接收cpu服務(wù)器通過已建立的連接卸載的壓縮數(shù)據(jù)流,并將所述壓縮數(shù)據(jù)流存儲到dpu加速卡的ddr存儲單元上;其中,壓縮數(shù)據(jù)流包含壓縮文件,所述壓縮文件由多個(gè)壓縮塊組成,所述壓縮塊攜帶塊類型信息;

4、從所述ddr存儲單元依次讀取壓縮數(shù)據(jù)流中預(yù)設(shè)字節(jié)長度的子數(shù)據(jù)流到加速核中,由加速核對所述子數(shù)據(jù)流進(jìn)行解壓處理;

5、其中,加速核對所述子數(shù)據(jù)流進(jìn)行解壓處理的步驟包括:利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的起始位置,所述壓縮文件的起始位置通過塊類型信息來標(biāo)識;對于組成壓縮文件的壓縮塊,按照預(yù)設(shè)解壓方式解析得到壓縮數(shù)據(jù)流中的各個(gè)壓縮塊包含的解壓數(shù)據(jù);將解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù);經(jīng)過加速核解壓后將解壓后得到的所述原始數(shù)據(jù)寫回到所述ddr存儲單元上,原始數(shù)據(jù)通過已建立的連接傳輸回cpu服務(wù)器。

6、在本發(fā)明的一些實(shí)施例中,每個(gè)壓縮塊還包含塊長度信息和塊數(shù)據(jù)內(nèi)容,所述利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的起始位置的步驟包括:利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的第一壓縮塊的位置,從而確定各個(gè)壓縮文件的起始位置。

7、在本發(fā)明的一些實(shí)施例中,所述按照預(yù)設(shè)解壓方式解析得到壓縮數(shù)據(jù)流中的各個(gè)壓縮塊包含的解壓數(shù)據(jù)的步驟包括:利用滑動(dòng)窗口的方式根據(jù)塊長度信息從壓縮塊中解析出塊數(shù)據(jù)內(nèi)容,所述塊數(shù)據(jù)內(nèi)容包含長度信息和壓縮數(shù)據(jù),從塊數(shù)據(jù)內(nèi)容中讀取符合所述長度信息的壓縮數(shù)據(jù);利用所述壓縮數(shù)據(jù)中包含的標(biāo)簽從壓縮數(shù)據(jù)中解壓出單個(gè)壓縮塊包含的解壓數(shù)據(jù)。

8、在本發(fā)明的一些實(shí)施例中,所述將解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù)的步驟包括:利用多選一開關(guān)將基于不同標(biāo)簽解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù)。

9、在本發(fā)明的一些實(shí)施例中,所述塊數(shù)據(jù)內(nèi)容中還包含用于檢測或校驗(yàn)解碼數(shù)據(jù)錯(cuò)誤的循環(huán)冗余校驗(yàn)位;塊數(shù)據(jù)內(nèi)容包含的所述長度信息使用varint編碼的規(guī)則進(jìn)行編碼。

10、在本發(fā)明的一些實(shí)施例中,所述標(biāo)簽的類型包括字面量標(biāo)簽和復(fù)制標(biāo)簽;利用所述壓縮數(shù)據(jù)中包含的標(biāo)簽從壓縮數(shù)據(jù)中解壓出單個(gè)壓縮塊包含的解壓數(shù)據(jù)的步驟包括:當(dāng)標(biāo)簽類型為字面量標(biāo)簽,直接將壓縮數(shù)據(jù)中指定長度的數(shù)據(jù)作為解壓數(shù)據(jù);當(dāng)標(biāo)簽類型為復(fù)制標(biāo)簽,根據(jù)壓縮數(shù)據(jù)中包含的偏移位置從在先數(shù)據(jù)中復(fù)制指定長度的數(shù)據(jù)作為解壓數(shù)據(jù)。

11、在本發(fā)明的一些實(shí)施例中,所述復(fù)制標(biāo)簽進(jìn)一步根據(jù)長度信息和偏移位置不同分為多種復(fù)制形式,在所述壓縮數(shù)據(jù)使用復(fù)制形式關(guān)鍵字標(biāo)識;所述在先數(shù)據(jù)通過dpu加速卡上預(yù)先設(shè)計(jì)的ram存儲器、讀地址寄存器和寫地址寄存器來緩存以供讀取和復(fù)制。

12、在本發(fā)明的一些實(shí)施例中,所述預(yù)設(shè)解壓方式包括snappy解壓、gzip解壓、lz4解壓和brotli解壓中的任一種。

13、本發(fā)明的另一方面提供了一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)裝置,dpu加速卡與cpu服務(wù)器建立連接組成異構(gòu)系統(tǒng),dpu加速卡包含ddr存儲單元和加速核,所述裝置包括:所述ddr存儲單元,用于接收并存儲cpu服務(wù)器通過已建立的連接卸載的壓縮數(shù)據(jù)流,從所述ddr存儲單元依次讀取壓縮數(shù)據(jù)流中預(yù)設(shè)字節(jié)長度的子數(shù)據(jù)流到加速核中,由加速核對所述子數(shù)據(jù)流進(jìn)行解壓處理;其中,壓縮數(shù)據(jù)流包含壓縮文件,所述壓縮文件由多個(gè)壓縮塊組成,所述壓縮塊攜帶塊類型信息;所述加速核,用于對所述子數(shù)據(jù)流進(jìn)行解壓處理,具體包括:利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的起始位置,所述壓縮文件的起始位置通過塊類型信息來標(biāo)識;對于組成壓縮文件的壓縮塊,按照預(yù)設(shè)解壓方式解析得到壓縮數(shù)據(jù)流中的各個(gè)壓縮塊包含的解壓數(shù)據(jù);將解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù);所述ddr存儲單元還用于寫回經(jīng)過加速核解壓后將解壓后得到的所述原始數(shù)據(jù),并將原始數(shù)據(jù)通過已建立的連接傳輸回cpu服務(wù)器。

14、在本發(fā)明的一些實(shí)施例中,所述基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)裝置中預(yù)先設(shè)置了滑動(dòng)窗口寄存器用于加速核對所述子數(shù)據(jù)流進(jìn)行解壓處理,所述滑動(dòng)窗口寄存器包括:第一滑動(dòng)窗口寄存器,用于利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的第一壓縮塊的位置,從而確定各個(gè)壓縮文件的起始位置;其中,每個(gè)壓縮塊還包含塊長度信息和塊數(shù)據(jù)內(nèi)容;第二滑動(dòng)窗口寄存器,用于利用滑動(dòng)窗口的方式根據(jù)塊長度信息從壓縮塊中解析出塊數(shù)據(jù)內(nèi)容,所述塊數(shù)據(jù)內(nèi)容包含長度信息和壓縮數(shù)據(jù),從塊數(shù)據(jù)內(nèi)容中讀取符合所述長度信息的壓縮數(shù)據(jù);利用所述壓縮數(shù)據(jù)中包含的標(biāo)簽從壓縮數(shù)據(jù)中解壓出單個(gè)壓縮塊包含的解壓數(shù)據(jù);第三滑動(dòng)窗口寄存器,用于利用滑動(dòng)窗口的方式和多選一開關(guān)將基于不同標(biāo)簽解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù)。

15、本發(fā)明的一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)方法和裝置,能夠?qū)⒋鈮旱膲嚎s數(shù)據(jù)流卸載到dpu加速卡上,利用dpu加速卡采用滑動(dòng)窗口的方式逐步解析出壓縮數(shù)據(jù)流包含的解壓數(shù)據(jù),并整合得到一路原始數(shù)據(jù)作為輸出,實(shí)現(xiàn)異構(gòu)系統(tǒng)下從壓縮數(shù)據(jù)流到原始數(shù)據(jù)的解壓縮。

16、本發(fā)明的附加優(yōu)點(diǎn)、目的,以及特征將在下面的描述中將部分地加以闡述,且將對于本領(lǐng)域普通技術(shù)人員在研究下文后部分地變得明顯,或者可以根據(jù)本發(fā)明的實(shí)踐而獲知。本發(fā)明的目的和其它優(yōu)點(diǎn)可以通過在說明書以及附圖中具體指出的結(jié)構(gòu)實(shí)現(xiàn)到并獲得。

17、本領(lǐng)域技術(shù)人員將會理解的是,能夠用本發(fā)明實(shí)現(xiàn)的目的和優(yōu)點(diǎn)不限于以上具體所述,并且根據(jù)以下詳細(xì)說明將更清楚地理解本發(fā)明能夠?qū)崿F(xiàn)的上述和其他目的。



技術(shù)特征:

1.一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)方法,其特征在于,dpu加速卡與cpu服務(wù)器建立連接組成異構(gòu)系統(tǒng),dpu加速卡包含ddr存儲單元和加速核,所述方法包括以下步驟:

2.根據(jù)權(quán)利要求1所述的方法,其特征在于,每個(gè)壓縮塊還包含塊長度信息和塊數(shù)據(jù)內(nèi)容,所述利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的起始位置的步驟包括:利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的第一壓縮塊的位置,從而確定各個(gè)壓縮文件的起始位置。

3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述按照預(yù)設(shè)解壓方式解析得到壓縮數(shù)據(jù)流中的各個(gè)壓縮塊包含的解壓數(shù)據(jù)的步驟包括:利用滑動(dòng)窗口的方式根據(jù)塊長度信息從壓縮塊中解析出塊數(shù)據(jù)內(nèi)容,所述塊數(shù)據(jù)內(nèi)容包含長度信息和壓縮數(shù)據(jù),從塊數(shù)據(jù)內(nèi)容中讀取符合所述長度信息的壓縮數(shù)據(jù);利用所述壓縮數(shù)據(jù)中包含的標(biāo)簽從壓縮數(shù)據(jù)中解壓出單個(gè)壓縮塊包含的解壓數(shù)據(jù)。

4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述將解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù)的步驟包括:利用多選一開關(guān)將基于不同標(biāo)簽解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù)。

5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述塊數(shù)據(jù)內(nèi)容中還包含用于檢測或校驗(yàn)解碼數(shù)據(jù)錯(cuò)誤的循環(huán)冗余校驗(yàn)位;

6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述標(biāo)簽的類型包括字面量標(biāo)簽和復(fù)制標(biāo)簽;

7.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述復(fù)制標(biāo)簽進(jìn)一步根據(jù)長度信息和偏移位置不同分為多種復(fù)制形式,在所述壓縮數(shù)據(jù)使用復(fù)制形式關(guān)鍵字標(biāo)識;

8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述預(yù)設(shè)解壓方式包括snappy解壓、gzip解壓、lz4解壓和brotli解壓中的任一種;

9.一種基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)裝置,其特征在于,dpu加速卡與cpu服務(wù)器建立連接組成異構(gòu)系統(tǒng),dpu加速卡包含ddr存儲單元和加速核,所述裝置包括:

10.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述基于異構(gòu)架構(gòu)下dpu加速卡的解壓實(shí)現(xiàn)裝置中預(yù)先設(shè)置了滑動(dòng)窗口寄存器用于加速核對所述子數(shù)據(jù)流進(jìn)行解壓處理,所述滑動(dòng)窗口寄存器包括:


技術(shù)總結(jié)
本發(fā)明提供一種基于異構(gòu)架構(gòu)下DPU加速卡的解壓實(shí)現(xiàn)方法和裝置,所述方法包括:DPU加速卡接收CPU服務(wù)器通過已建立的連接卸載的壓縮數(shù)據(jù)流,并將所述壓縮數(shù)據(jù)流存儲到DPU加速卡的DDR存儲單元上;從所述DDR存儲單元依次讀取壓縮數(shù)據(jù)流中預(yù)設(shè)字節(jié)長度的子數(shù)據(jù)流到加速核中,由加速核對子數(shù)據(jù)流進(jìn)行解壓處理,包括:利用滑動(dòng)窗口的方式在所述子數(shù)據(jù)流中比對查找壓縮文件的起始位置;對于組成壓縮文件的壓縮塊,按照預(yù)設(shè)解壓方式解析得到壓縮數(shù)據(jù)流中的各個(gè)壓縮塊包含的解壓數(shù)據(jù);將解壓得到的各個(gè)壓縮塊包含的解壓數(shù)據(jù)合并成一路原始數(shù)據(jù);經(jīng)過加速核解壓后將解壓后得到的所述原始數(shù)據(jù)寫回到DDR存儲單元上,原始數(shù)據(jù)通過已建立的連接傳輸回CPU服務(wù)器。

技術(shù)研發(fā)人員:李志亞,耿嘉,袁曉飛,張宇,鄢貴海
受保護(hù)的技術(shù)使用者:中科馭數(shù)(北京)科技有限公司
技術(shù)研發(fā)日:
技術(shù)公布日:2025/1/2
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
会昌县| 楚雄市| 南投市| 额尔古纳市| 江口县| 江北区| 深州市| 灵台县| 寻乌县| 合肥市| 海伦市| 沽源县| 天等县| 东台市| 建水县| 油尖旺区| 高清| 浮山县| 玉门市| 黄山市| 金乡县| 建水县| 孝感市| 巩义市| 湘阴县| 临沭县| 东港市| 永宁县| 柞水县| 大渡口区| 邵阳市| 赞皇县| 汶川县| 新巴尔虎右旗| 永丰县| 平和县| 昭觉县| 万州区| 大港区| 潜山县| 遵义市|