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

實現(xiàn)內(nèi)存共享控制的方法、設(shè)備、計算機設(shè)備和系統(tǒng)與流程

文檔序號:40642703發(fā)布日期:2025-01-10 18:48閱讀:2來源:國知局
實現(xiàn)內(nèi)存共享控制的方法、設(shè)備、計算機設(shè)備和系統(tǒng)與流程

本技術(shù)涉及信息,尤其涉及一種控制共享內(nèi)存的方法、設(shè)備和系統(tǒng)。


背景技術(shù):

1、隨著大數(shù)據(jù)技術(shù)的普及,各種領(lǐng)域的應(yīng)用對于計算資源的需求與日俱增。以圖計算、深度學(xué)習(xí)等應(yīng)用為代表的大規(guī)模計算代表著最新的應(yīng)用發(fā)展方向。同時,伴隨著半導(dǎo)體工藝發(fā)展的放緩,應(yīng)用已經(jīng)無法從處理器的更新?lián)Q代中持續(xù)獲得可擴展的性能提升,基于多核的處理器逐漸成為主流。

2、多核的處理器系統(tǒng)對內(nèi)存的容量的需求不斷提高。內(nèi)存作為服務(wù)器中不可或缺的重要組件,成本約占服務(wù)器整系統(tǒng)成本的30%-40%。提高內(nèi)存的利用率,是降低系統(tǒng)總成本(total?cost?of?operations,tco)的重要手段。


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

1、本技術(shù)提供一種實現(xiàn)內(nèi)存共享控制的方法實現(xiàn)內(nèi)存共享控制的方法、設(shè)備、計算機設(shè)備和系統(tǒng),以提高內(nèi)存資源的利用率。

2、第一方面,本技術(shù)提供一種計算機設(shè)備,包括至少兩個處理單元、內(nèi)存共享控制設(shè)備和內(nèi)存池,所述處理單元為處理器、處理器中的核或處理器中核的組合,所述內(nèi)存池包括一個或多個內(nèi)存;

3、所述至少兩個處理單元與所述內(nèi)存共享控制設(shè)備耦合;

4、所述內(nèi)存共享控制設(shè)備,用于從所述內(nèi)存池中分別為所述至少兩個處理單元分配內(nèi)存,所述內(nèi)存池中的至少一個內(nèi)存能夠在不同的時間段被不同的處理單元訪問;

5、所述至少兩個處理單元,用于通過所述內(nèi)存共享控制設(shè)備,訪問分配的內(nèi)存。

6、所述計算機設(shè)備中的至少兩個處理單元能夠通過所述內(nèi)存共享控制設(shè)備,在不同的時間段訪問所述內(nèi)存池中的至少一個內(nèi)存,能夠?qū)崿F(xiàn)多個處理單元對內(nèi)存的共享,從而提高內(nèi)存資源的利用率。

7、可選的,所述內(nèi)存池中的至少一個內(nèi)存能夠在不同的時間段被不同的處理單元訪問,是指所述至少兩個處理單元中的任意兩個處理單元,可以在不同的時間段分別訪問所述內(nèi)存池中的至少一個內(nèi)存。例如所述至少兩個處理單元包括第一處理單元和第二處理單元,在第一時間段,所述內(nèi)存池中的第一內(nèi)存被第一處理單元訪問,第二處理單元不能訪問該第一內(nèi)存;在第二時間段,所述內(nèi)存池中的第一內(nèi)存被第二處理單元訪問,第一處理單元不能訪問該第一內(nèi)存??蛇x的,所述處理器可以是中央處理單元(central?processingunit,cpu),一個cpu中可以包括2個或多個核。

8、可選的,所述至少兩個處理單元中的一個處理單元可以是一個處理器,一個處理器中的核,一個處理器中的多個核的組合,或不同處理器中多個核的組合。將一個處理器中的多個核的組合作為一個處理單元,或?qū)⒉煌幚砥髦卸鄠€核的組合作為一個處理單元,可以滿足并行計算場景下,多個不同的核并行執(zhí)行任務(wù)時對同一塊內(nèi)存的訪問,能夠提升多個不同的核執(zhí)行并行計算時的效率。

9、可選的,所述內(nèi)存共享控制設(shè)備,可以根據(jù)接收到的所述計算機設(shè)備中的操作系統(tǒng)發(fā)送的控制指令,從所述內(nèi)存池中分別為所述至少兩個處理單元分配內(nèi)存。具體的,可以是所述操作系統(tǒng)中的驅(qū)動程序,通過專用的通道,將分配所述內(nèi)存池中的內(nèi)存給所述至少兩個處理單元的控制指令,發(fā)送給所述內(nèi)存共享控制設(shè)備。所述操作系統(tǒng)是通過所述計算機設(shè)備中的cpu通過執(zhí)行相關(guān)的代碼實現(xiàn)的,運行所述操作系統(tǒng)的cpu有一個特權(quán)(privilege)模式,在該模式下,操作系統(tǒng)中的驅(qū)動程序能夠通過專用的或特定的通道向所述內(nèi)存共享控制設(shè)備發(fā)送控制指令。

10、可選的,所述內(nèi)存共享控制設(shè)備可以是現(xiàn)場可編程門陣列(field?programmablegate?array,fpga)芯片、專用集成電路(application-specific?integrated?circuit,asic)或其它類似的芯片實現(xiàn)。asic芯片是在設(shè)計最初就已經(jīng)定義了其電路功能,具有芯片集成度高、容易實現(xiàn)大批量流片、單片成本低且尺寸小等特點。

11、在一些可能的實現(xiàn)方式中,所述至少兩個處理單元與所述內(nèi)存共享控制設(shè)備之間通過串行總線連接;

12、所述至少兩個處理單元中的第一處理單元,用于通過所述串行總線向所述內(nèi)存共享設(shè)備發(fā)送串行信號形式的第一內(nèi)存訪問請求,所述第一內(nèi)存訪問請求用于訪問分配給所述第一處理單元的第一內(nèi)存。

13、串行總線具有高帶寬、低時延的特性,所述至少兩個處理單元與所述內(nèi)存共享控制設(shè)備之間通過串行總線連接,能夠保證處理單元與內(nèi)存共享控制設(shè)備之間數(shù)據(jù)傳輸?shù)男省?/p>

14、可選的,所述串行總線是內(nèi)存語義的總線。所述內(nèi)存語義的總線包括但不限于:基于快速路徑互聯(lián)(quick?path?interconnect,qpi)、快捷外圍部件互連標準(peripheralcomponent?interconnect?express,pcie)、華為緩存一致性系統(tǒng)(huawei?cachecoherence?system,hccs)或計算快速鏈路(compute?express?link,cxl)協(xié)議互聯(lián)的總線。

15、可選的,所述第一處理單元在生成內(nèi)存訪問請求時,是并行信號形式的內(nèi)存訪問請求。所述第一處理單元,可以通過能夠?qū)崿F(xiàn)并行信號與串行信號轉(zhuǎn)換的接口,例如serdes接口,將并行信號形式的內(nèi)存訪問請求轉(zhuǎn)換為串行信號形式的第一內(nèi)存訪問請求,并通過串行總線發(fā)送給所述內(nèi)存共享設(shè)備。

16、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備包括處理器接口,所述處理器接口用于:

17、接收所述第一內(nèi)存訪問請求;

18、將所述第一內(nèi)存訪問請求轉(zhuǎn)換為并行信號形式的第二內(nèi)存訪問請求。

19、所述處理器接口將所述第一內(nèi)存訪問請求轉(zhuǎn)換為并行信號形式的第二內(nèi)存訪問請求,能夠使得所述內(nèi)存共享控制設(shè)備實現(xiàn)對所述第一內(nèi)存的訪問,在不改變現(xiàn)有內(nèi)存訪問架構(gòu)的框架下實現(xiàn)內(nèi)存共享。

20、可選的,所述處理器接口是能夠?qū)崿F(xiàn)并行信號與串行信號轉(zhuǎn)換的接口,例如可以是serdes接口。

21、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備包括控制單元,所述控制單元用于:

22、建立所述內(nèi)存池中所述第一內(nèi)存的內(nèi)存地址與所述至少兩個處理單元中的第一處理單元的對應(yīng)關(guān)系,以從所述內(nèi)存池中為所述第一處理單元分配所述第一內(nèi)存。

23、可選的,所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系可以動態(tài)調(diào)整的。例如,所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系,可以按需動態(tài)調(diào)整。

24、可選的,所述第一內(nèi)存的內(nèi)存地址,可以是所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址。所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址能夠簡化對所述第一內(nèi)存的管理。當(dāng)然,所述第一內(nèi)存的內(nèi)存地址,也可以是所述內(nèi)存池中不連續(xù)的幾段物理內(nèi)存地址。

25、可選的,所述第一內(nèi)存的內(nèi)存地址信息包括所述第一內(nèi)存的起始地址和所述第一內(nèi)存的大小。所述第一處理單元有一個標識,所述建立所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系可以是建立所述第一處理單元的唯一標識與所述第一內(nèi)存的內(nèi)存地址信息之間的對應(yīng)關(guān)系。

26、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備包括控制單元,所述控制單元用于:

27、從所述內(nèi)存池虛擬出多個虛擬內(nèi)存設(shè)備,其中,所述多個虛擬內(nèi)存設(shè)備中的第一虛擬內(nèi)存設(shè)備對應(yīng)的物理內(nèi)存為所述第一內(nèi)存;

28、將所述第一虛擬內(nèi)存設(shè)備分配給所述第一處理單元??蛇x的,所述虛擬內(nèi)存設(shè)備對應(yīng)所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址。所述虛擬內(nèi)存設(shè)備對應(yīng)所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址,能夠簡化對所述虛擬內(nèi)存設(shè)備的管理。當(dāng)然,所述虛擬內(nèi)存設(shè)備,也可以對應(yīng)所述內(nèi)存池中不連續(xù)的幾段物理內(nèi)存地址。

29、可選的,可以通過建立訪問控制表的方式,將將所述第一虛擬內(nèi)存設(shè)備分配給所述第一處理單元。例如所述訪問控制表可以包括所述第一處理單元的標識,所述第一虛擬內(nèi)存設(shè)備的標識,所述第一虛擬內(nèi)存設(shè)備對應(yīng)的內(nèi)存的起始地址和大小等信息。所述訪問控制表中,還可以包括所述第一處理單元訪問所述第一虛擬內(nèi)存設(shè)備的權(quán)限信息,要訪問的內(nèi)存的屬性信息(包括但不限于是否是持久化內(nèi)存的信息)等。

30、在一些可能的實現(xiàn)方式中,所述控制單元還用于:

31、當(dāng)預(yù)設(shè)條件滿足時,解除所述第一虛擬內(nèi)存設(shè)備與所述第一處理單元之間的對應(yīng)關(guān)系;

32、建立所述第一虛擬內(nèi)存設(shè)備與所述至少兩個處理單元中的第二處理單元之間的對應(yīng)關(guān)系。

33、可選的,可以按照所述至少兩個處理單元對內(nèi)存資源的需求,動態(tài)調(diào)整虛擬內(nèi)存設(shè)備與處理單元之間的對應(yīng)關(guān)系。

34、通過上述動態(tài)調(diào)整虛擬內(nèi)存設(shè)備與處理單元之間的對應(yīng)關(guān)系,能夠靈活地適應(yīng)不同處理單元不同業(yè)務(wù)場景下對內(nèi)存資源的需求,提高內(nèi)存資源的利用率。

35、可選的,所述預(yù)設(shè)的條件可以是第一處理單元訪問內(nèi)存的需求量減小,而第二處理單元對內(nèi)存的訪問需求量增多。

36、可選的,所述控制單元還用于:

37、當(dāng)預(yù)設(shè)條件滿足時,解除所述第一內(nèi)存與所述第一虛擬內(nèi)存設(shè)備之間的對應(yīng)關(guān)系;建立所述第一內(nèi)存與所述多個虛擬內(nèi)存設(shè)備中的第二虛擬內(nèi)存設(shè)備之間的對應(yīng)關(guān)系;將所述第二虛擬內(nèi)存設(shè)備分配給所述至少兩個處理單元中的第二處理單元。這種情況下,不需要改變虛擬內(nèi)存設(shè)備與內(nèi)存池中物理內(nèi)存地址之間的對應(yīng)關(guān)系,只需要改變虛擬內(nèi)存設(shè)備與不同處理單元之間的對應(yīng)關(guān)系,即可實現(xiàn)不同處理單元對同一塊物理內(nèi)存在不同時間段的訪問。

38、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括緩存單元,所述緩存單元用于緩存所述至少兩個處理單元中的任意一個處理單元從所述內(nèi)存池讀取的數(shù)據(jù),或緩存所述至少兩個處理單元中的任意一個處理單元淘汰的數(shù)據(jù)。

39、通過所述緩存單元,能夠進一步提升處理單元訪問內(nèi)存數(shù)據(jù)的效率。

40、可選的,所述緩存單元可以包括一級緩存和二級緩存。所述一級緩存可以是容量小但讀寫速度高于二級緩存,例如一級緩存可以是納秒級的、100百萬字節(jié)(mega?byte,mb)大小的緩存;所述二級緩存可以是容量大但讀寫速度低于一級緩存,例如二級緩存可以是1千兆字節(jié)(gigabyte,gb)大小的動態(tài)隨機存取存儲器(dynamic?random?access?memory,dram)。通過所述一級緩存和二級緩存,能夠在通過緩存提高處理器訪問數(shù)據(jù)速度的同時,增大緩存的空間,擴大通過緩存實現(xiàn)處理器快速訪問內(nèi)存的范圍,從總體上進一步提升處理器資源池訪問內(nèi)存時的速率。

41、可選的,可以將內(nèi)存中的數(shù)據(jù)先緩存在二級緩存,在根據(jù)處理單元對內(nèi)存數(shù)據(jù)的需要,將二級緩存中的數(shù)據(jù)緩存在一級緩存中。也可以將處理單元中淘汰或暫時不需要處理的數(shù)據(jù)緩存在一級緩存,為保證一級緩存有足夠的空間供其它處理單元緩存數(shù)據(jù)使用,可以將部分一級緩存中處理單元淘汰的數(shù)據(jù)緩存在二級緩存單元中。

42、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括預(yù)取引擎,所述預(yù)取引擎用于從所述內(nèi)存池中預(yù)先取出所述至少兩個處理單元中的任意一個處理單元需要讀取的數(shù)據(jù),并緩存在所述緩存單元中。

43、可選的,所述預(yù)取引擎可以通過特定的算法或相關(guān)的人工智能(artificialintelligence,ai)算法,實現(xiàn)智能的數(shù)據(jù)預(yù)期,以進一步提升處理單元訪問內(nèi)存數(shù)據(jù)的效率。

44、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括服務(wù)質(zhì)量(quality?ofservice,qos)引擎,所述qos引擎用于實現(xiàn)所述至少兩個處理單元中的任意一個處理單元需要緩存的數(shù)據(jù)在所述緩存單元中的優(yōu)化存儲。通過所述qos引擎,能夠?qū)崿F(xiàn)不同處理單元訪問內(nèi)存的數(shù)據(jù)在緩存單元304中有不同的緩存能力。例如,優(yōu)先級高的處理單元發(fā)起的內(nèi)存訪問請求在緩存單元304中有獨占的緩存空間,這樣能夠保證該處理單元訪問的數(shù)據(jù)能夠被及時緩存,從而保證這類處理器業(yè)務(wù)處理的質(zhì)量。

45、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括壓縮/解壓縮引擎,所述壓縮/解壓縮引擎用于實現(xiàn)所述與內(nèi)存訪問相關(guān)數(shù)據(jù)的壓縮或解壓縮。

46、可選的,所述壓縮/解壓縮引擎的功能可以被關(guān)閉。

47、所述壓縮/解壓縮引擎可以通過壓縮比算法以每頁4千比特(kilobit,kb)為粒度將處理單元寫入內(nèi)存的數(shù)據(jù)壓縮后寫入內(nèi)存;或者在處理單元讀取內(nèi)存中的壓縮數(shù)據(jù)時,將要讀取的數(shù)據(jù)解壓后再送給處理器。這樣能夠提高數(shù)據(jù)傳遞的速率,進一步提升處理單元訪問內(nèi)存數(shù)據(jù)的效率??蛇x的,所述壓縮/解壓縮引擎可被關(guān)閉。

48、可選的,所述內(nèi)存共享控制設(shè)備還包括存儲單元,所述存儲單元包括所述qos引擎、所述預(yù)取引擎、以及所述壓縮/解壓縮引擎中的至少一個的軟件代碼。所述內(nèi)存共享控制設(shè)備可以讀取所述存儲單元中的代碼,實現(xiàn)相應(yīng)的功能。

49、可選的,所述qos引擎、所述預(yù)取引擎、以及所述壓縮/解壓縮引擎種的至少一個可以通過所述內(nèi)存共享控制設(shè)備的控制邏輯實現(xiàn)。

50、在一些可能的實現(xiàn)方式中,所述第一處理單元還具有本地內(nèi)存,所述本地內(nèi)存用于所述第一處理單元的內(nèi)存訪問。可選的,所述第一處理單元可以優(yōu)先訪問所述本地內(nèi)存。所述第一處理單元訪問所述本地內(nèi)存的速度更快,這樣能夠進一步提升所述第一處理單元訪問內(nèi)存的速度。

51、在一些可能的實現(xiàn)方式中,所述內(nèi)存池所包含的多個內(nèi)存屬于不同的介質(zhì)類型。例如,所述內(nèi)存池中可以包括下列內(nèi)存介質(zhì)中的至少其中之一:dram、變相存儲(phasechange?memory,pcm)、存儲級存儲器(storage?class?memory,scm)、靜態(tài)隨機存取存儲器(static?random?access?memory,sram)、可編程只讀存儲器(programmable?read?onlymemory,prom)、可抹除可編程只讀存儲器(erasable?programmable?read?only?memory,eprom)、閃存(nand?flash?memory)、自旋矩傳輸磁存儲器(spin-torque?transfer?readonly?memory,stt-ram)或電阻式存儲器(resistor?read?only?memory,rram)。所述內(nèi)存池中還可以包括雙列直插式存儲器模塊或雙線存儲器模塊(dual?in-line?memory?module,簡稱dimm),或固態(tài)硬盤(solid?state?disk,ssd)。

52、用不同的內(nèi)存介質(zhì),能夠滿足不同處理單元在處理器不同業(yè)務(wù)對內(nèi)存資源的需求。例如dram具有讀寫速度快、易失性的特點,可以將dram的內(nèi)存分配給發(fā)起熱數(shù)據(jù)訪問的處理單元;而pcm具有非易失性的特點,可以將pcm的內(nèi)存分配給訪問需要長時間保存的數(shù)據(jù)的處理單元。這樣,能夠在共享內(nèi)存資源的同時,提升內(nèi)存訪問控制的靈活性。

53、以內(nèi)存池包括易失性的dram存儲介質(zhì)和非易失性的pcm的存儲介質(zhì)為例,內(nèi)存池中的dram和pcm可以是并列的架構(gòu),dram和pcm沒有上下級之分;也可以是以dram作為緩存,pcm作為主存的非并列的架構(gòu),dram可以作為第一級的存儲介質(zhì),pcm作為第二級的存儲介質(zhì)。對于dram和pcm并列的架構(gòu),所述控制單元可以將訪問頻率高的熱數(shù)據(jù)存儲在dram上,即建立發(fā)起訪問頻率高的熱數(shù)據(jù)的處理單元與dram的內(nèi)存對應(yīng)的虛擬內(nèi)存設(shè)備之間的對應(yīng)關(guān)系,這樣可以提高內(nèi)存數(shù)據(jù)的讀寫速度和主存系統(tǒng)的使用壽命。所述控制單元還可以建立發(fā)起訪問頻率低的冷數(shù)據(jù)的處理單元與pcm的內(nèi)存對應(yīng)的虛擬內(nèi)存設(shè)備之間的對應(yīng)關(guān)系,將訪問頻率低的冷數(shù)據(jù)存儲在pcm上,這樣能夠利用pcm非易失的特性保證重要數(shù)據(jù)的安全性。對于dram和pcm非并列的架構(gòu),可以利用pcm高集成度和dram低讀寫延時的特點,所述控制單元可以將pcm作為主存以存儲各類數(shù)據(jù),將dram作為緩存,這樣可以進一步提高內(nèi)存訪問的效率和性能。

54、第二方面,本技術(shù)提供一種系統(tǒng),包括至少兩個第一方面所述的計算機設(shè)備,所述至少兩個第一方面所述的計算機設(shè)備通過網(wǎng)絡(luò)連接。

55、所述系統(tǒng)的一個計算機設(shè)備,不僅能夠通過內(nèi)存共享控制設(shè)備訪問該計算機設(shè)備上的內(nèi)存池,從而提高內(nèi)存的利用率,還可以通過網(wǎng)絡(luò)訪問其它計算機設(shè)備上的內(nèi)存池。將內(nèi)存池的范圍擴大,能夠進一步提升內(nèi)存資源的利用率。

56、可選的,所述系統(tǒng)中的計算機設(shè)備中的內(nèi)存共享控制設(shè)備,還可以具有網(wǎng)絡(luò)適配器的功能,能夠?qū)⑻幚韱卧脑L問請求,通過網(wǎng)絡(luò)發(fā)送給所述系統(tǒng)中的其它計算機設(shè)備,以訪問其它計算機設(shè)備中的內(nèi)存。

57、可選的,所述系統(tǒng)中的計算機設(shè)備還可以包括具有串并轉(zhuǎn)換接口(例如serdes接口)的網(wǎng)絡(luò)適配器,所述計算機設(shè)備中的內(nèi)存共享控制設(shè)備可以通過所述網(wǎng)絡(luò)適配器,將處理單元的內(nèi)存訪問請求通過網(wǎng)絡(luò)發(fā)送給所述系統(tǒng)中的其它計算機設(shè)備,以訪問其它計算機設(shè)備中的內(nèi)存。

58、可選的,所述系統(tǒng)中的計算機設(shè)備可以通過基于以太網(wǎng)絡(luò)或基于統(tǒng)一總線(unit-bus,u-bus)網(wǎng)絡(luò)連接。

59、第三方面,本技術(shù)提供一種內(nèi)存共享控制設(shè)備,所述內(nèi)存共享控制設(shè)備包括控制單元,處理器接口和內(nèi)存接口;

60、所述處理器接口,用于接收至少兩個處理單元發(fā)送的內(nèi)存訪問請求;其中,所述處理單元為處理器、處理器中的核或處理器中核的組合;

61、所述控制單元,用于從內(nèi)存池中分別為所述至少兩個處理單元分配內(nèi)存,所述內(nèi)存池中的至少一個內(nèi)存能夠在不同的時間段被不同的處理單元訪問;

62、所述控制單元,還用于通過所述內(nèi)存接口實現(xiàn)所述至少兩個處理單元對分配的內(nèi)存的訪問。

63、通過所述內(nèi)存共享控制設(shè)備,能夠?qū)崿F(xiàn)不同的處理單元在不同的時間段訪問所述內(nèi)存池中的至少一個內(nèi)存,能夠滿足處理單元對內(nèi)存資源的需求,提升了內(nèi)存資源的利用率。

64、可選的,所述內(nèi)存池中的至少一個內(nèi)存能夠在不同的時間段被不同的處理單元訪問,是指所述至少兩個處理單元中的任意兩個處理單元,可以在不同的時間段分別訪問所述內(nèi)存池中的至少一個內(nèi)存。例如所述至少兩個處理單元包括第一處理單元和第二處理單元,在第一時間段,所述內(nèi)存池中的第一內(nèi)存被第一處理單元訪問,第二處理單元不能訪問該第一內(nèi)存;在第二時間段,所述內(nèi)存池中的第一內(nèi)存被第二處理單元訪問,第一處理單元不能訪問該第一內(nèi)存。

65、可選的,所述內(nèi)存接口可以是雙倍數(shù)據(jù)速率(double?data?rate,ddr)控制器,或所述內(nèi)存接口可以是pcm控制功能的內(nèi)存控制器。

66、可選的,所述內(nèi)存共享控制設(shè)備,可以根據(jù)接收到的所述計算機設(shè)備中的操作系統(tǒng)發(fā)送的控制指令,從所述內(nèi)存池中分別為所述至少兩個處理單元分配內(nèi)存。具體的,可以是所述操作系統(tǒng)中的驅(qū)動程序,通過專用的通道,將分配所述內(nèi)存池中的內(nèi)存給所述至少兩個處理單元的控制指令,發(fā)送給所述內(nèi)存共享控制設(shè)備。所述操作系統(tǒng)是通過所述計算機設(shè)備中的cpu通過執(zhí)行相關(guān)的代碼實現(xiàn)的,運行所述操作系統(tǒng)的cpu有一個特權(quán)(pr?ivilege)模式,在該模式下,操作系統(tǒng)中的驅(qū)動程序能夠通過專用的或特定的通道向所述內(nèi)存共享控制設(shè)備發(fā)送控制指令。

67、可選的,所述內(nèi)存共享控制設(shè)備可以是fpga芯片、asic或其它類似的芯片實現(xiàn)。

68、在一些可能的實現(xiàn)方式中,所述處理器接口,還用于通過串行總線接收所述至少兩個處理單元中的第一處理單元以串行信號形式發(fā)送的第一內(nèi)存訪問請求,所述第一內(nèi)存訪問請求用于訪問分配給所述第一處理單元的第一內(nèi)存。

69、串行總線具有高帶寬、低時延的特性,通過串行總線接收所述至少兩個處理單元中的第一處理單元以串行信號形式發(fā)送的第一內(nèi)存訪問請求,能夠保證處理單元與內(nèi)存共享控制設(shè)備之間數(shù)據(jù)傳輸?shù)男省?/p>

70、可選的,所述串行總線是內(nèi)存語義的總線。所述內(nèi)存語義的總線包括但不限于:qpi、pcie、hccs或cxl協(xié)議互聯(lián)的總線。

71、在一些可能的實現(xiàn)方式中,所述處理器接口,還用于將所述第一內(nèi)存訪問請求轉(zhuǎn)換為并行信號形式的第二內(nèi)存訪問請求,并將所述第二內(nèi)存訪問請求發(fā)送給所述控制單元;

72、所述控制單元,還用于通過所述內(nèi)存接口實現(xiàn)所述第二內(nèi)存訪問請求對所述第一內(nèi)存的訪問。

73、可選的,所述處理器接口是能夠?qū)崿F(xiàn)并行信號與串行信號轉(zhuǎn)換的接口,例如可以是serdes接口。

74、在一些可能的實現(xiàn)方式中,所述控制單元,還用于建立所述內(nèi)存池中所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系,以從所述內(nèi)存池中為所述第一處理單元分配所述第一內(nèi)存。

75、可選的,所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系動態(tài)可調(diào)。例如,所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系動態(tài),可以按需動態(tài)調(diào)整。

76、可選的,所述第一內(nèi)存的內(nèi)存地址,可以是所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址。所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址能夠簡化對所述第一內(nèi)存的管理。當(dāng)然,所述第一內(nèi)存的內(nèi)存地址,也可以是所述內(nèi)存池中不連續(xù)的幾段物理內(nèi)存地址。

77、可選的,所述第一內(nèi)存的內(nèi)存地址信息包括所述第一內(nèi)存的起始地址和所述第一內(nèi)存的大小。所述第一處理單元有一個標識,所述建立所述第一內(nèi)存的內(nèi)存地址與所述第一處理單元的對應(yīng)關(guān)系可以是建立所述第一處理單元的唯一標識與所述第一內(nèi)存的內(nèi)存地址信息之間的對應(yīng)關(guān)系。在一些可能的實現(xiàn)方式中,所述控制單元,還用于從所述內(nèi)存池虛擬出多個虛擬內(nèi)存設(shè)備,其中,所述多個虛擬內(nèi)存設(shè)備中的第一虛擬內(nèi)存設(shè)備對應(yīng)的物理內(nèi)存為所述第一內(nèi)存;

78、將所述第一虛擬內(nèi)存設(shè)備分配給所述第一處理單元。

79、可選的,所述虛擬內(nèi)存設(shè)備對應(yīng)所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址。所述虛擬內(nèi)存設(shè)備對應(yīng)所述內(nèi)存池中一段連續(xù)的物理內(nèi)存地址,能夠簡化對所述虛擬內(nèi)存設(shè)備的管理。當(dāng)然,所述虛擬內(nèi)存設(shè)備,也可以對應(yīng)所述內(nèi)存池中不連續(xù)的幾段物理內(nèi)存地址。

80、可選的,可以通過建立訪問控制表的方式,將將所述第一虛擬內(nèi)存設(shè)備分配給所述第一處理單元。例如所述訪問控制表可以包括所述第一處理單元的標識,所述第一虛擬內(nèi)存設(shè)備的標識,所述第一虛擬內(nèi)存設(shè)備對應(yīng)的內(nèi)存的起始地址和大小等信息。所述訪問控制表中,還可以包括所述第一處理單元訪問所述第一虛擬內(nèi)存設(shè)備的權(quán)限信息,要訪問的內(nèi)存的屬性信息(包括但不限于是否是持久化內(nèi)存的信息)等。

81、在一些可能的實現(xiàn)方式中,所述控制單元還用于:當(dāng)預(yù)設(shè)條件滿足時,解除所述第一虛擬內(nèi)存設(shè)備與所述第一處理單元之間的對應(yīng)關(guān)系,并建立所述第一虛擬內(nèi)存設(shè)備與所述至少兩個處理單元中的第二處理單元之間的對應(yīng)關(guān)系。

82、可選的,可以按照所述至少兩個處理單元對內(nèi)存資源的需求,動態(tài)調(diào)整虛擬內(nèi)存設(shè)備與處理單元之間的對應(yīng)關(guān)系。

83、通過上述動態(tài)調(diào)整虛擬內(nèi)存設(shè)備與處理單元之間的對應(yīng)關(guān)系,能夠靈活地適應(yīng)不同處理單元不同業(yè)務(wù)場景下對內(nèi)存資源的需求,提高內(nèi)存資源的利用率。

84、可選的,所述控制單元還用于:

85、當(dāng)預(yù)設(shè)條件滿足時,解除所述第一內(nèi)存與所述第一虛擬內(nèi)存設(shè)備之間的對應(yīng)關(guān)系;建立所述第一內(nèi)存與所述多個虛擬內(nèi)存設(shè)備中的第二虛擬內(nèi)存設(shè)備之間的對應(yīng)關(guān)系;將所述第二虛擬內(nèi)存設(shè)備分配給所述至少兩個處理單元中的第二處理單元。這種情況下,不需要改變虛擬內(nèi)存設(shè)備與內(nèi)存池中物理內(nèi)存地址之間的對應(yīng)關(guān)系,只需要改變虛擬內(nèi)存設(shè)備與不同處理單元之間的對應(yīng)關(guān)系,即可實現(xiàn)不同處理單元對同一塊物理內(nèi)存在不同時間段的訪問。在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括緩存單元;

86、所述緩存單元,用于緩存所述至少兩個處理單元中的任意一個處理單元從所述內(nèi)存池讀取的數(shù)據(jù),或緩存所述至少兩個處理單元中的任意一個處理單元淘汰的數(shù)據(jù)。

87、通過所述緩存單元,能夠進一步提升處理單元訪問內(nèi)存數(shù)據(jù)的效率。

88、可選的,所述緩存單元可以包括一級緩存和二級緩存。所述一級緩存可以是容量小但讀寫速度高于二級緩存,例如一級緩存可以是納秒級的、100mb大小的緩存;所述二級緩存可以是容量大但讀寫速度低于一級緩存,例如二級緩存可以是1gb大小的dram。通過所述一級緩存和二級緩存,能夠在通過緩存提高處理器訪問數(shù)據(jù)速度的同時,增大緩存的空間,擴大通過緩存實現(xiàn)處理器快速訪問內(nèi)存的范圍,從總體上進一步提升處理器資源池訪問內(nèi)存時的速率。

89、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括預(yù)取引擎,所述預(yù)取引擎用于從所述內(nèi)存池中預(yù)先取出所述至少兩個處理單元中的任意一個處理單元需要讀取的數(shù)據(jù),并緩存在所述緩存單元中。

90、可選的,所述預(yù)取引擎可以通過特定的算法或ai算法,實現(xiàn)智能的數(shù)據(jù)預(yù)期,以進一步提升處理單元訪問內(nèi)存數(shù)據(jù)的效率。

91、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括服務(wù)質(zhì)量qos引擎;

92、所述qos引擎,用于控制實現(xiàn)至少兩個處理單元中的任意一個處理單元需要緩存的數(shù)據(jù)在所述緩存單元中的優(yōu)化存儲。通過所述qos引擎,能夠?qū)崿F(xiàn)不同處理單元訪問內(nèi)存的數(shù)據(jù)在緩存單元304中有不同的緩存能力。例如,優(yōu)先級高的處理單元發(fā)起的內(nèi)存訪問請求在緩存單元304中有獨占的緩存空間,這樣能夠保證該處理單元訪問的數(shù)據(jù)能夠被及時緩存,從而保證這類處理器業(yè)務(wù)處理的質(zhì)量。

93、在一些可能的實現(xiàn)方式中,所述內(nèi)存共享控制設(shè)備還包括壓縮/解壓縮引擎;

94、所述壓縮/解壓縮引擎,用于實現(xiàn)與內(nèi)存訪問相關(guān)數(shù)據(jù)的壓縮或解壓縮。

95、可選的,所述壓縮/解壓縮引擎的功能可以被關(guān)閉。

96、可選的,所述壓縮/解壓縮引擎可以通過壓縮比算法以每頁4kb為粒度將處理單元寫入內(nèi)存的數(shù)據(jù)壓縮后寫入內(nèi)存;或者在處理單元讀取內(nèi)存中的壓縮數(shù)據(jù)時,將要讀取的數(shù)據(jù)解壓后再送給處理器。這樣能夠提高數(shù)據(jù)傳遞的速率,進一步提升處理單元訪問內(nèi)存數(shù)據(jù)的效率??蛇x的,所述壓縮/解壓縮引擎可被關(guān)閉。

97、可選的,所述內(nèi)存共享控制設(shè)備還可以包括存儲單元,所述存儲單元包括所述qos引擎、所述預(yù)取引擎、以及所述壓縮/解壓縮引擎中的至少一個的軟件代碼。所述內(nèi)存共享控制設(shè)備可以讀取所述存儲單元中的代碼,實現(xiàn)相應(yīng)的功能。

98、可選的,所述qos引擎、所述預(yù)取引擎、以及所述壓縮/解壓縮引擎種的至少一個可以通過所述內(nèi)存共享控制設(shè)備的控制邏輯實現(xiàn)。

99、第四方面,本技術(shù)提供一種內(nèi)存共享控制的方法,所述方法應(yīng)用于計算機設(shè)備中,所述計算機設(shè)備包括至少兩個處理單元、內(nèi)存共享控制設(shè)備和內(nèi)存池,所述內(nèi)存池包括一個或多個內(nèi)存,所述方法包括:

100、所述內(nèi)存共享控制設(shè)備接收至少兩個處理單元中的第一處理單元發(fā)送的第一內(nèi)存訪問請求;其中,所述處理單元為處理器、處理器中的核或處理器中核的組合;

101、所述內(nèi)存共享控制設(shè)備從內(nèi)存池中為所述第一處理單元分配第一內(nèi)存,所述第一內(nèi)存能夠在其他時間段被所述至少兩個處理單元中的第二處理單元訪問;

102、所述第一處理單元通過所述內(nèi)存共享控制設(shè)備訪問所述第一內(nèi)存。

103、通過所述方法,使得不同的處理單元在不同的時間段訪問內(nèi)存池中的至少一個內(nèi)存,能夠滿足處理單元對內(nèi)存資源的需求,提升了內(nèi)存資源的利用率。

104、在一些可能的實現(xiàn)方式中,所述方法還包括:

105、所述內(nèi)存共享控制設(shè)備通過串行總線接收所述至少兩個處理單元中的第一處理單元以串行信號形式發(fā)送的第一內(nèi)存訪問請求,所述第一內(nèi)存訪問請求用于訪問分配給所述第一處理單元的第一內(nèi)存。

106、在一些可能的實現(xiàn)方式中,所述方法還包括:

107、所述內(nèi)存共享控制設(shè)備將所述第一內(nèi)存訪問請求轉(zhuǎn)換為并行信號形式的第二內(nèi)存訪問請求,并根據(jù)所述第二內(nèi)存訪問請求實現(xiàn)對所述第一內(nèi)存的訪問。

108、在一些可能的實現(xiàn)方式中,所述方法還包括:

109、所述內(nèi)存共享控制設(shè)備建立所述內(nèi)存池中所述第一內(nèi)存的內(nèi)存地址與所述至少兩個處理單元中的第一處理單元的對應(yīng)關(guān)系。

110、在一些可能的實現(xiàn)方式中,所述方法還包括:

111、所述內(nèi)存共享控制設(shè)備從所述內(nèi)存池虛擬出多個虛擬內(nèi)存設(shè)備,其中,所述多個虛擬內(nèi)存設(shè)備中的第一虛擬內(nèi)存設(shè)備對應(yīng)的物理內(nèi)存為所述第一內(nèi)存;

112、所述內(nèi)存共享控制設(shè)備還用于將所述第一虛擬內(nèi)存設(shè)備分配給所述第一處理單元。

113、在一些可能的實現(xiàn)方式中,所述方法還包括:

114、當(dāng)預(yù)設(shè)條件滿足時,所述內(nèi)存共享控制設(shè)備解除所述第一虛擬內(nèi)存設(shè)備與所述第一處理單元之間的對應(yīng)關(guān)系,并建立所述第一虛擬內(nèi)存設(shè)備與所述至少兩個處理單元中的第二處理單元之間的對應(yīng)關(guān)系。

115、在一些可能的實現(xiàn)方式中,所述方法還包括:

116、所述內(nèi)存共享控制設(shè)備緩存所述至少兩個處理單元中的任意一個處理單元從所述內(nèi)存池讀取的數(shù)據(jù),或緩存所述至少兩個處理單元中的任意一個處理單元淘汰的數(shù)據(jù)。

117、在一些可能的實現(xiàn)方式中,所述方法還包括:

118、所述內(nèi)存共享控制設(shè)備從所述內(nèi)存池中預(yù)先取出所述至少兩個處理單元中的任意一個處理單元需要讀取的數(shù)據(jù)并緩存。

119、在一些可能的實現(xiàn)方式中,所述方法還包括:

120、所述內(nèi)存共享控制設(shè)備控制所述至少兩個處理單元中的任意一個處理單元需要緩存的數(shù)據(jù)在緩存存儲介質(zhì)中的優(yōu)化存儲。

121、在一些可能的實現(xiàn)方式中,所述方法還包括:

122、壓縮或解壓縮與內(nèi)存訪問相關(guān)的數(shù)據(jù)。

123、第五方面,本技術(shù)實施例還提供了一種芯片,所述芯片用于實現(xiàn)所述第三方面所述內(nèi)存共享控制設(shè)備所實現(xiàn)的功能。

124、第六方面,本技術(shù)實施例還提供了一種計算機可讀存儲介質(zhì),包括程序代碼,該程序代碼包括用于執(zhí)行第四方面提供的任一方法的部分或全部步驟的指令。

125、第七方面,本技術(shù)實施例還提供了一種計算機程序產(chǎn)品,當(dāng)其在計算機上運行時,使得第四方面提供的任一方法被執(zhí)行。

126、可以理解地,上述提供的任一種內(nèi)存共享控制設(shè)備、計算機可讀存儲介質(zhì)或計算機程序產(chǎn)品等均用于執(zhí)行上文所提供的對應(yīng)的方法,因此,其所能達到的有益效果可參考對應(yīng)的方法中的有益效果,此處不再贅述。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
扶沟县| 内丘县| 泗阳县| 梁河县| 兴海县| 霍邱县| 普宁市| 乐清市| 越西县| 乌拉特前旗| 巩留县| 富蕴县| 酉阳| 祁门县| 铜鼓县| 雷州市| 睢宁县| 绥阳县| 镇安县| 天水市| 沧源| 吉水县| 马公市| 勃利县| 辽宁省| 尖扎县| 玉门市| 尉氏县| 兰溪市| 鸡泽县| 拉孜县| 乳源| 新巴尔虎右旗| 星子县| 屏东县| 桃源县| 昭通市| 抚宁县| 云霄县| 三台县| 南部县|