亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

混合huma/s-coma系統(tǒng)及方法

文檔序號(hào):6417487閱讀:248來(lái)源:國(guó)知局
專利名稱:混合huma/s-coma系統(tǒng)及方法
技術(shù)領(lǐng)域
本發(fā)明涉及分布式共享存儲(chǔ)器系統(tǒng)及高速緩沖存儲(chǔ)器領(lǐng)域。具體地說(shuō),本發(fā)明涉及一種混合結(jié)構(gòu),在這種結(jié)構(gòu)中,在頂層形成有第一種存儲(chǔ)器(簡(jiǎn)單COMA),該存儲(chǔ)器與另一種存儲(chǔ)器(NUMA)形成整體。
本文件中使用了下列術(shù)語(yǔ)全局存儲(chǔ)器(Global Memory)它指可由不同節(jié)點(diǎn)上的進(jìn)程來(lái)加以尋址的存儲(chǔ)器對(duì)象。它形成并安裝在UNIX系統(tǒng)V且被安裝進(jìn)要對(duì)全局存儲(chǔ)器對(duì)象進(jìn)行尋址的各個(gè)進(jìn)程的有效地址空間內(nèi)。
DSM分布式共享存儲(chǔ)器(Distributed Shared Memory)。一種能提供共享存儲(chǔ)器功能的結(jié)構(gòu),盡管物理存儲(chǔ)器分布在系統(tǒng)的節(jié)點(diǎn)之間。
S-COMA只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(SimpleCache only Memory Architecture)。是一種DSM的配置方式,其中,每個(gè)節(jié)點(diǎn)均將其本地存儲(chǔ)器的一部分保留為用于全局存儲(chǔ)器的高速緩沖存儲(chǔ)器。通過(guò)S-COMA軟件與硬件的組合來(lái)管理這種高速緩沖存儲(chǔ)器。各進(jìn)程通過(guò)進(jìn)程的特定虛地址來(lái)訪問(wèn)數(shù)據(jù),節(jié)點(diǎn)存儲(chǔ)器硬件通過(guò)本地實(shí)地址來(lái)訪問(wèn)數(shù)據(jù),S-COMA硬件在節(jié)點(diǎn)之間傳遞全局地址。S-COMA子系統(tǒng)控制本地地址與全局地址之間的變換。
NUMA非均等的存儲(chǔ)器存取(Non Uniform Memory Access)。一種DSM配置方式,其中,系統(tǒng)內(nèi)的n個(gè)節(jié)點(diǎn)中的每一個(gè)節(jié)點(diǎn)均占有系統(tǒng)的實(shí)存儲(chǔ)器(和實(shí)地址空間)的1/n。進(jìn)程通過(guò)虛地址來(lái)訪問(wèn)數(shù)據(jù),節(jié)點(diǎn)存儲(chǔ)器硬件通過(guò)實(shí)地址來(lái)訪問(wèn)數(shù)據(jù)。NUMA基礎(chǔ)結(jié)構(gòu)在節(jié)點(diǎn)之間傳遞實(shí)地址。
UMA均等的存儲(chǔ)器存取(Uniform Memory Access)。一種共享的存儲(chǔ)器組織,通過(guò)這種組織,任何處理器均可在相同(均等)的時(shí)間內(nèi)訪問(wèn)任何存儲(chǔ)器的存儲(chǔ)單元。
邊界函數(shù)(BF,boundary Function)層或邏輯函數(shù),它在節(jié)點(diǎn)的邊界處執(zhí)行一組動(dòng)作。在本發(fā)明中,BF為經(jīng)由DSM的子系統(tǒng)進(jìn)入或離開節(jié)點(diǎn)的地址進(jìn)行地址變換。
客戶(Client)一種節(jié)點(diǎn),它可訪問(wèn)(緩存)數(shù)據(jù),但不是數(shù)據(jù)的基地。
基地(Home)一種節(jié)點(diǎn),它是數(shù)據(jù)的擁有者或者是對(duì)數(shù)據(jù)關(guān)聯(lián)性進(jìn)行管理的目錄的擁有者。
延遲時(shí)間(Latency)與諸如從存儲(chǔ)器中取出數(shù)據(jù)之類的特定動(dòng)作或操作有關(guān)的延遲時(shí)間。
窺探邏輯(Snooping logic)用于監(jiān)測(cè)(窺探)線路或總線從而查找特定的地址、標(biāo)記或其它關(guān)鍵信息的邏輯。
網(wǎng)絡(luò)邏輯(Network logic)與網(wǎng)絡(luò)或通訊光纖相連的邏輯。
實(shí)地址空間(Real address space)由地址變換所產(chǎn)生的實(shí)地址范圍。是物理存儲(chǔ)器的地址。
本地實(shí)地址(Local real address)一種實(shí)地址,它用于本地節(jié)點(diǎn)。
全局實(shí)地址(Global real address)一種實(shí)地址,它可于所有的節(jié)點(diǎn)。
物理地址(Physical address)一種實(shí)地址,是物理存儲(chǔ)器的地址。
輸入地址(Input address)設(shè)置成輸入給一個(gè)組件的地址。
相關(guān)地址(Associated address)由成對(duì)地址構(gòu)成的數(shù)據(jù)結(jié)構(gòu)中的成對(duì)地址的第二個(gè)地址,第一個(gè)地址是輸入地址。
共享存儲(chǔ)器的多處理器系統(tǒng)允許多個(gè)處理器中的各個(gè)處理器通過(guò)讀和寫(加載和存儲(chǔ))操作來(lái)訪問(wèn)任何的存儲(chǔ)單元(存儲(chǔ)器)。除了就效率而言,共享存儲(chǔ)器的基本結(jié)構(gòu)相對(duì)處理器或程序是隱藏的。
一個(gè)存儲(chǔ)器的存儲(chǔ)單元可由多個(gè)處理器來(lái)更新。結(jié)果是產(chǎn)生單個(gè)系列的更新值,并且所有的處理器都能按相同的順序查看對(duì)存儲(chǔ)器存儲(chǔ)單元的更新值。這種屬性稱為“關(guān)聯(lián)性”。在關(guān)聯(lián)的系統(tǒng)中,處理器不能查看到上另一個(gè)處理器不同的更新次序。
與高速緩沖存儲(chǔ)器關(guān)聯(lián)、共享的存儲(chǔ)器多處理器系統(tǒng)能向存儲(chǔ)器提供高速緩沖存儲(chǔ)器,從而提高存儲(chǔ)器存取的效率(減少延遲時(shí)間)。由于高速緩沖存儲(chǔ)器保持有關(guān)聯(lián)性,所以能保持如系統(tǒng)中所有存儲(chǔ)器所查看到的那樣的用于給定存儲(chǔ)器存儲(chǔ)單元的單個(gè)更新值序列的特征。
本專利中所述的系統(tǒng)結(jié)構(gòu)是與高速緩沖存儲(chǔ)器關(guān)聯(lián)、共享的存儲(chǔ)器多處理器系統(tǒng)。以下說(shuō)明這種系統(tǒng)的三種具體的變化形式即UMA、NUMA和S-COMA。
“UMA”是指均等存儲(chǔ)器存取,并且描述了這樣一種系統(tǒng)結(jié)構(gòu),其中,計(jì)算機(jī)系統(tǒng)中的多個(gè)處理器共享一個(gè)實(shí)地址空間,從任何一個(gè)處理器到任何一個(gè)存儲(chǔ)器存儲(chǔ)單元的延遲時(shí)間都是相同的或者是均等的。也就是說(shuō),給定的處理器可按均等的時(shí)間訪問(wèn)任何的存儲(chǔ)器的存儲(chǔ)單元。最新型的對(duì)稱多處理器(SMP)是UMA系統(tǒng)。

圖1示出了典型的UMA系統(tǒng)10的結(jié)構(gòu)。多個(gè)處理器12和存儲(chǔ)器16一樣與共用系統(tǒng)總線14相連。由于從任何一個(gè)處理器12到任何存儲(chǔ)器16中的一個(gè)存儲(chǔ)單元的路徑都是相同的(也就是說(shuō),經(jīng)過(guò)系統(tǒng)總線),所以從任何一個(gè)處理器到任何一個(gè)存儲(chǔ)器存儲(chǔ)單元的延遲時(shí)間都是相同的。
圖1還示出了高速緩沖存儲(chǔ)器18。必須存在有這樣一種高速緩沖存儲(chǔ)器關(guān)聯(lián)性協(xié)議,該協(xié)議對(duì)高速緩沖存儲(chǔ)器18進(jìn)行管理并確保對(duì)一個(gè)的存儲(chǔ)器存儲(chǔ)單元的更新是有序的,因此,所有的處理器都會(huì)查看到同一個(gè)更新序列。在諸如所說(shuō)明的UMA系統(tǒng)中,這一點(diǎn)通常是通過(guò)使各個(gè)高速緩沖存儲(chǔ)器控制器在系統(tǒng)總線上進(jìn)行“窺探”而實(shí)現(xiàn)的。這包括觀察總線上的所有事務(wù),并在總線上的操作涉及到窺探者的高速緩沖存儲(chǔ)器中所保存的存儲(chǔ)器存儲(chǔ)單元時(shí)采取行動(dòng)(即參與關(guān)聯(lián)性協(xié)議)。
這種組織方式的好處是可以簡(jiǎn)化并行的程序設(shè)計(jì),因?yàn)?,進(jìn)程可對(duì)數(shù)據(jù)的位置不敏感,也就是說(shuō),可按特定的時(shí)間量存取數(shù)據(jù),而與用于保存數(shù)據(jù)的存儲(chǔ)器存儲(chǔ)單元無(wú)關(guān)。
這種組織方式的缺點(diǎn)是UMA系統(tǒng)不能很好地進(jìn)行調(diào)整。由于設(shè)計(jì)出了越來(lái)越大的系統(tǒng)(有越來(lái)越多的處理器和存儲(chǔ)器),所以,保持存儲(chǔ)器存取時(shí)間的均等性更加困難且昂貴。此外,需要高速緩沖存儲(chǔ)器控制器來(lái)進(jìn)行窺探的方案需要有諸如共用系統(tǒng)總線之類的用于數(shù)據(jù)地址的共用通訊媒介。但是,由于其中設(shè)置了更多的處理器和更多的存儲(chǔ)器操作,故系統(tǒng)總線是過(guò)載的串行資源。當(dāng)系統(tǒng)總線飽和時(shí),增加更多或更快的處理器并不能提高系統(tǒng)效率。
另一種系統(tǒng)變形是“NUMA”,它指不均等的存儲(chǔ)器存取并描述了這樣一種系統(tǒng)結(jié)構(gòu),其中,計(jì)算機(jī)系統(tǒng)中的多個(gè)處理器共享一個(gè)實(shí)地址空間,在該空間內(nèi),存儲(chǔ)器延遲時(shí)間隨存取存儲(chǔ)器存儲(chǔ)單元的變化而變。也就是說(shuō),某些存儲(chǔ)器存儲(chǔ)單元比另一些存儲(chǔ)單元“更接近”某些存儲(chǔ)器。與UMA系統(tǒng)不同,不能在相同的時(shí)間內(nèi)從給定的存儲(chǔ)器來(lái)存取所有的存儲(chǔ)器存儲(chǔ)單元,也就是說(shuō),其些存儲(chǔ)器存儲(chǔ)單元要比另一些存儲(chǔ)單元花更長(zhǎng)的時(shí)間才能存取,所以,存儲(chǔ)器存取時(shí)間是不均等的。
如圖2所示,NUMA系統(tǒng)提供了分布式共享存儲(chǔ)器,也就是說(shuō),總的系統(tǒng)存儲(chǔ)器是節(jié)點(diǎn)22中的存儲(chǔ)器M1、M2、M3的總和。存在有單個(gè)的實(shí)地址空間,系統(tǒng)20中的所有節(jié)點(diǎn)22均可共享該地址空間,在圖2中,每個(gè)節(jié)點(diǎn)均包含系統(tǒng)存儲(chǔ)器的三分之一。每個(gè)節(jié)點(diǎn)22均包括UMA系統(tǒng)10。多個(gè)節(jié)點(diǎn)均通過(guò)網(wǎng)絡(luò)接口(NI)26與共用通信光纖或網(wǎng)絡(luò)24相連。
一個(gè)節(jié)點(diǎn)中的處理器可通過(guò)一個(gè)裝載或存儲(chǔ)指令來(lái)存取另一個(gè)節(jié)點(diǎn)中的存儲(chǔ)器存儲(chǔ)單元。NUMA存儲(chǔ)器控制器(NMC)28的功能是負(fù)責(zé)在本地節(jié)點(diǎn)的系統(tǒng)總線上捕獲存儲(chǔ)器請(qǐng)求,并將其傳給包含目標(biāo)存儲(chǔ)器存儲(chǔ)單元的節(jié)點(diǎn)(即基地節(jié)點(diǎn))。由于從一個(gè)處理器到遠(yuǎn)程存儲(chǔ)器存儲(chǔ)單元的路徑要比從同一處理器到本地存儲(chǔ)器存儲(chǔ)單元的路徑遠(yuǎn),故存儲(chǔ)器存取時(shí)間是不均等的。
同UMA系統(tǒng)一樣,高速緩沖存儲(chǔ)器通過(guò)某種協(xié)儀保持相關(guān)聯(lián)。所有節(jié)點(diǎn)上的處理器都會(huì)在串行時(shí)查看到對(duì)單個(gè)存儲(chǔ)器存儲(chǔ)單元的更新。但是,與UMA系統(tǒng)不同,NUMA系統(tǒng)一般不能將存儲(chǔ)器操作廣播給所有節(jié)點(diǎn)從而使所有的高速緩沖存儲(chǔ)器控制器均能對(duì)這些節(jié)點(diǎn)進(jìn)行窺探。相反,基地節(jié)點(diǎn)NMC負(fù)責(zé)將關(guān)聯(lián)性請(qǐng)求傳給對(duì)這些請(qǐng)求感興趣的遠(yuǎn)程節(jié)點(diǎn)。在典型的NUMA實(shí)現(xiàn)形式中,每個(gè)NMC均保持有用于節(jié)點(diǎn)中的所有存儲(chǔ)器的目錄。這個(gè)目錄跟蹤本地存儲(chǔ)器的各個(gè)高速緩沖存儲(chǔ)器的數(shù)據(jù)行,從而保持高速緩沖存儲(chǔ)器數(shù)據(jù)行的狀態(tài),并了解是否有其它節(jié)點(diǎn)正在對(duì)該數(shù)據(jù)行進(jìn)行緩存。例如,節(jié)點(diǎn)1中的NMC28跟蹤M1中的所有存儲(chǔ)器。如果在節(jié)點(diǎn)1中出現(xiàn)了存儲(chǔ)器操作,節(jié)點(diǎn)1上的NMC28就查詢其目錄,并將請(qǐng)求傳給具有被緩存的目標(biāo)數(shù)據(jù)行的所有節(jié)點(diǎn)。題為“用于在各高速緩沖存儲(chǔ)模式之間進(jìn)行選擇的混合NUMA COMA高速緩沖存儲(chǔ)系統(tǒng)和方法”的US專利5710907號(hào)中充分地說(shuō)明了NUMA系統(tǒng)中用于遠(yuǎn)程存儲(chǔ)器存取的樣本數(shù)據(jù)流,本文引用了該專利的全部?jī)?nèi)容。
上述結(jié)構(gòu)的優(yōu)點(diǎn)是,能很容易地建立這樣的系統(tǒng),該系統(tǒng)可在UMA系統(tǒng)限制的范圍之外進(jìn)行調(diào)整。主要原因是,所有的高速緩沖存儲(chǔ)器控制器都不必對(duì)單個(gè)的共用通訊光纖進(jìn)行窺探。相反,這些控制器僅窺視本地光纖,本地光纖僅在對(duì)節(jié)點(diǎn)有影響時(shí)才查看存儲(chǔ)器操作。
NUMA系統(tǒng)的缺點(diǎn)是,對(duì)性能敏感的程序會(huì)根據(jù)數(shù)據(jù)放置在存儲(chǔ)器中的位置而以不同的方式執(zhí)行。這一點(diǎn)對(duì)在多個(gè)程序執(zhí)行線程之間共享數(shù)據(jù)的并行程序來(lái)說(shuō)特別重要。
導(dǎo)致分布式存儲(chǔ)器有增加的存儲(chǔ)器延遲時(shí)間的第二個(gè)問(wèn)題是NUMA系統(tǒng)的有限的高速緩沖存儲(chǔ)器長(zhǎng)度。某些NUMA系統(tǒng)不能提供比構(gòu)成NUMA系統(tǒng)的SMP更強(qiáng)的緩存能力,在這種情況下,增加的存儲(chǔ)器延遲時(shí)間會(huì)使硬件高速緩沖存儲(chǔ)器的優(yōu)點(diǎn)變小。另外,在NMC中可提供另一層次的硬件緩存。但是,該硬件是專用硬件,這意味著一種開銷,這種開銷僅在對(duì)遠(yuǎn)程存儲(chǔ)器進(jìn)行大量存取時(shí)才有用。
作為又一種系統(tǒng)變形,“S-COMA”是指只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(即COMA的變形,COMA是指高速緩沖存儲(chǔ)器的唯一存儲(chǔ)器結(jié)構(gòu))并描述了一種分布式共享存儲(chǔ)器結(jié)構(gòu),其中,計(jì)算機(jī)系統(tǒng)中的多個(gè)處理器可透明地存取整個(gè)系統(tǒng)中的任何存儲(chǔ)器,并且,存儲(chǔ)器延遲時(shí)間隨所存取的存儲(chǔ)器存儲(chǔ)單元而變。但是,與NUMA系統(tǒng)不同,節(jié)點(diǎn)保持有獨(dú)立的實(shí)地址空間。各個(gè)節(jié)點(diǎn)的本地實(shí)存儲(chǔ)器的一部分被用作了高速緩沖存儲(chǔ)器,由系統(tǒng)軟件將該高速緩沖存儲(chǔ)器分配成有頁(yè)長(zhǎng)度的信息塊。所引用的US專利5710907號(hào)中充分地說(shuō)明了S-COMA操作的特點(diǎn)。
上述結(jié)構(gòu)的一個(gè)優(yōu)點(diǎn)是,能很容易地建立比UMA或NUMA更易調(diào)整的系統(tǒng)。主要原因是,各個(gè)節(jié)點(diǎn)僅對(duì)它們的本地實(shí)存儲(chǔ)器空間進(jìn)行管理,從而減少了系統(tǒng)的復(fù)雜性和節(jié)點(diǎn)間的干擾。還有,同NUMA一樣,所有的高速緩沖存儲(chǔ)器控制器不必窺探單個(gè)的共用通訊光纖。相反,它們只窺探本地光纖,本地光纖僅在對(duì)節(jié)點(diǎn)有影響時(shí)才查看存儲(chǔ)器操作。
此外,S-COMA與NUMA相比通過(guò)提供很大的主存儲(chǔ)器高速緩沖存儲(chǔ)器而能為多個(gè)程序提供更佳的平均延遲時(shí)間。由于提供了很大的高速緩沖存儲(chǔ)器,故可在很大程度上減少高速緩沖存儲(chǔ)器出錯(cuò)次數(shù),從而減少遠(yuǎn)程存儲(chǔ)器存取次數(shù),因而能提高程序的效率。再有,S-COMA與NUMA相比通過(guò)減少對(duì)存儲(chǔ)器管理數(shù)據(jù)結(jié)構(gòu)的爭(zhēng)用而提供更佳的可調(diào)性和節(jié)點(diǎn)獨(dú)立特性。通過(guò)借助變換函數(shù)來(lái)過(guò)濾地址還可限制直接存儲(chǔ)器存取。
參照?qǐng)D3,利用S-COMA結(jié)構(gòu),可創(chuàng)建全局存儲(chǔ)器對(duì)象并為其分配全局地址(GA),并將一單個(gè)的節(jié)點(diǎn)指定為用于任何特定數(shù)據(jù)頁(yè)的基地節(jié)點(diǎn)30。通過(guò)將一虛地址(VA)賦給全局對(duì)象,可將上述全局對(duì)象與各個(gè)有關(guān)的進(jìn)程地址空間連接起來(lái)。隨后用頁(yè)表(PT)將VA變換成本地實(shí)地址(RA)。
每個(gè)節(jié)點(diǎn)30、32均保持有S-COMA高速緩沖存儲(chǔ)器34即主存儲(chǔ)器36中的高速緩沖存儲(chǔ)器,該高速緩沖存儲(chǔ)器由S-COMA子系統(tǒng)所持有。在訪問(wèn)全局?jǐn)?shù)據(jù)區(qū)時(shí),對(duì)S-COMA高速緩沖存儲(chǔ)器中的槽(slot)進(jìn)行分配,通過(guò)將數(shù)據(jù)放進(jìn)基地節(jié)點(diǎn)的S-COMA高速緩沖存儲(chǔ)器34中而使該數(shù)據(jù)形成在駐留于基地節(jié)點(diǎn)30的存儲(chǔ)器中?;?0上的S-COMA設(shè)備用于使基地S-COMA高速緩沖存儲(chǔ)器數(shù)據(jù)行34的地址(RA)與目標(biāo)數(shù)據(jù)行的全局地址(GA)相關(guān)聯(lián)??蛻艄?jié)點(diǎn)32中的S-COMA設(shè)備用于使客戶S-COMA高速緩沖存儲(chǔ)器數(shù)據(jù)行34的地址(RA′)與目標(biāo)數(shù)據(jù)行的全局地址相關(guān)聯(lián)。
當(dāng)客戶32試圖訪問(wèn)不在本地L2高速緩沖存儲(chǔ)器內(nèi)的全局?jǐn)?shù)據(jù)時(shí),就檢查客戶的S-COMA高速緩沖存儲(chǔ)器34。如果在該高速緩沖存儲(chǔ)器中有數(shù)據(jù),就從本地存儲(chǔ)器(RA′)取出數(shù)據(jù)并結(jié)束請(qǐng)求。如果在客戶的S-COMA高速緩沖存儲(chǔ)器34中數(shù)據(jù)不存在或不是處于有效狀態(tài),則客戶的S-COMA目錄′38就與基地的S-COMA目錄38相通訊,以檢索該數(shù)據(jù)的有效拷貝。
在節(jié)點(diǎn)間進(jìn)行通訊的各個(gè)節(jié)點(diǎn)中,S-COMA機(jī)構(gòu)執(zhí)行邊界函數(shù),以便將S-COMA高速緩沖存儲(chǔ)器槽的相關(guān)的本地實(shí)地址(RA)、(RA′)變換成全局地址(GA)。請(qǐng)注意,各個(gè)節(jié)點(diǎn)30、32可使用同于目標(biāo)數(shù)據(jù)行的S-COMA高速緩沖存儲(chǔ)器槽的不同實(shí)地址,但所有的節(jié)點(diǎn)均使用相同的全局地址以標(biāo)識(shí)特定的全局?jǐn)?shù)據(jù)行。通過(guò)這種方式,可保持節(jié)點(diǎn)間的獨(dú)立性。
盡管根據(jù)高速緩沖存儲(chǔ)器數(shù)據(jù)行進(jìn)行關(guān)聯(lián),但S-COMA緩存系統(tǒng)具有按頁(yè)增量來(lái)分配高速緩沖存儲(chǔ)器槽的缺點(diǎn)。如果進(jìn)程使用了在S-COMA高速緩沖存儲(chǔ)器中分配的各個(gè)頁(yè)內(nèi)的存儲(chǔ)器的較大百分比,則S-COMA能通過(guò)提供更大的高速緩存容量而優(yōu)于NUMA。但是,如果使用了所分配的各個(gè)頁(yè)的較少的部分,則S-COMA會(huì)因分配未被充分使用的較大的高速緩沖存儲(chǔ)器槽而浪費(fèi)存儲(chǔ)器。
作為又一種變化形式,上述題為“用于在高速緩沖存儲(chǔ)模式之間進(jìn)行選擇的混合NUMA COMA高速緩沖存儲(chǔ)系統(tǒng)和方法”的美國(guó)專利5710907說(shuō)明了一種混合緩存結(jié)構(gòu)及用于多處理器計(jì)算機(jī)系統(tǒng)的高速緩沖存儲(chǔ)器關(guān)聯(lián)性協(xié)議。在這種混合系統(tǒng)的一種實(shí)現(xiàn)形式中,各個(gè)子系統(tǒng)均包括至少一個(gè)處理器、面向頁(yè)的COMA高速緩沖存儲(chǔ)器以及面向數(shù)據(jù)行的混合NUMA/COMA高速緩沖存儲(chǔ)器。每個(gè)子系統(tǒng)均能獨(dú)立地按COMA模式或NUMA模式存儲(chǔ)數(shù)據(jù)。在按COMA模式進(jìn)行緩存時(shí),子系統(tǒng)分配存儲(chǔ)器空間的一個(gè)頁(yè),然后將數(shù)據(jù)存儲(chǔ)在COMA高速緩沖存儲(chǔ)器中所分配的頁(yè)內(nèi)。依照這種實(shí)現(xiàn)形式,在按COMA模式進(jìn)行緩存時(shí),所述子系統(tǒng)還能將同一數(shù)據(jù)存儲(chǔ)在混合高速緩沖存儲(chǔ)器內(nèi)以便快速存取。相反,在按NUMA模式進(jìn)行緩存時(shí),所述子系統(tǒng)將通常是一行數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)在混合高速緩沖存儲(chǔ)器內(nèi)。
上述混合系統(tǒng)的一個(gè)缺點(diǎn)是該系統(tǒng)依賴于一個(gè)S-COMA關(guān)聯(lián)設(shè)備,該設(shè)備獨(dú)立于或等同于NUMA關(guān)聯(lián)設(shè)備。用兩種在邏輯上是完整的設(shè)備來(lái)實(shí)現(xiàn)本文所述的混合概念。此外,基地和客戶節(jié)點(diǎn)必須保持著用于數(shù)據(jù)的S-COMA高速緩沖存儲(chǔ)器并在全局地址與實(shí)地址之間進(jìn)行變換。
盡管存在有上述系統(tǒng)變化形式,但還是希望進(jìn)一步改進(jìn)系統(tǒng)存儲(chǔ)器結(jié)構(gòu)特別是改進(jìn)使用了第一種存儲(chǔ)器和第二種存儲(chǔ)器的混合結(jié)構(gòu)。
簡(jiǎn)要地說(shuō),在一個(gè)方面中,本發(fā)明包括一種混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),該系統(tǒng)可與具有多個(gè)彼此相連的節(jié)點(diǎn)的計(jì)算機(jī)一道使用,其中,將數(shù)據(jù)作為多個(gè)頁(yè)存儲(chǔ)在混合NUMA/S-COMA存儲(chǔ)器系統(tǒng)內(nèi),每個(gè)頁(yè)均包括至少一個(gè)數(shù)據(jù)行。所述混合NUMA/S-COMA存儲(chǔ)器系統(tǒng)包括多個(gè)NUMA存儲(chǔ)器,它們配置成能存儲(chǔ)至少一個(gè)數(shù)據(jù)行。所述多個(gè)NUMA存儲(chǔ)器的每個(gè)NUMA存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的不同節(jié)點(diǎn)。所述多個(gè)NUMA存儲(chǔ)器包括一個(gè)NUMA關(guān)聯(lián)子系統(tǒng),它用于協(xié)調(diào)數(shù)據(jù)在NUMA存儲(chǔ)器之間的傳遞。所述混合NUMA/S-COMA存儲(chǔ)器系統(tǒng)還包括NUMA存儲(chǔ)器內(nèi)的至少一個(gè)S-COMA高速緩沖存儲(chǔ)器,它配置成能存儲(chǔ)上述多個(gè)頁(yè)中的至少一個(gè)頁(yè)。每個(gè)S-COMA高速緩沖存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的不同節(jié)點(diǎn)。至少一個(gè)S-COMA高速緩沖存儲(chǔ)器在從計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)內(nèi)的另一個(gè)節(jié)點(diǎn)中接收數(shù)據(jù)或?qū)?shù)據(jù)傳給計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)內(nèi)的另一個(gè)節(jié)點(diǎn)時(shí)使用了NUMA關(guān)聯(lián)子系統(tǒng)。
在另一個(gè)方面中,本發(fā)明包括用于在計(jì)算機(jī)系統(tǒng)的客戶節(jié)點(diǎn)與基地節(jié)點(diǎn)之間傳遞數(shù)據(jù)的方法,所述計(jì)算機(jī)系統(tǒng)具有多個(gè)彼此相連的節(jié)點(diǎn),其中,所述計(jì)算機(jī)系統(tǒng)使用了混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),這種系統(tǒng)具有多個(gè)能存儲(chǔ)數(shù)據(jù)的NUMA存儲(chǔ)器,每個(gè)NUMA存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn);以及,至少一個(gè)能存儲(chǔ)數(shù)據(jù)的S-COMA高速緩沖存儲(chǔ)器,每個(gè)S-COMA高速緩沖存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn),所述客戶節(jié)點(diǎn)包括由至少一個(gè)S-COMA高速緩沖存儲(chǔ)器中的S-COMA高速緩沖存儲(chǔ)器。所述傳遞方法包括在所述計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的客戶節(jié)點(diǎn)處生成對(duì)存儲(chǔ)器實(shí)地址的數(shù)據(jù)請(qǐng)求;確定該實(shí)地址是否包括客戶節(jié)點(diǎn)處的本地實(shí)地址;當(dāng)所述實(shí)地址包括一本地實(shí)地址時(shí),就確定是否需要對(duì)上述本地實(shí)地址作邊界函數(shù)變換,以便將該本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址;以及,當(dāng)需要上述邊界函數(shù)變換時(shí),就將本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址,其中,基地節(jié)點(diǎn)實(shí)地址包括一網(wǎng)絡(luò)地址,客戶節(jié)點(diǎn)在請(qǐng)求存取基地節(jié)點(diǎn)實(shí)地址處的數(shù)據(jù)時(shí)使用該網(wǎng)絡(luò)地址。
在又一個(gè)方面中,本發(fā)明包括用于構(gòu)造混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng)的方法。該方法包括提供一計(jì)算機(jī)系統(tǒng),它帶有多個(gè)彼此相連的節(jié)點(diǎn);使該計(jì)算機(jī)系統(tǒng)配備有一非均等存儲(chǔ)器存取(NUMA)結(jié)構(gòu),所述NUMA結(jié)構(gòu)包括NUMA關(guān)聯(lián)子系統(tǒng);以及,在計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的至少一個(gè)節(jié)點(diǎn)處形成只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(S-COMA)高速緩沖存儲(chǔ)器,形成S-COMA高速緩沖存儲(chǔ)器的過(guò)程包括將上述S-COMA高速緩沖存儲(chǔ)器配置成能在不使用S-COMA關(guān)聯(lián)子系統(tǒng)的情況下使用NUMA關(guān)聯(lián)子系統(tǒng)來(lái)進(jìn)行數(shù)據(jù)訪問(wèn)捕獲、數(shù)據(jù)移動(dòng)以及關(guān)聯(lián)性管理。
在還一個(gè)方面中,本發(fā)明包括一種產(chǎn)品,它包括至少一種計(jì)算機(jī)可用的媒體,該媒體中包括有一個(gè)被實(shí)現(xiàn)于其中的計(jì)算機(jī)可讀的程序代碼裝置,以便在計(jì)算機(jī)系統(tǒng)的客戶節(jié)點(diǎn)與基地節(jié)點(diǎn)之間傳遞數(shù)據(jù),所述計(jì)算機(jī)系統(tǒng)具有多個(gè)彼此相連的節(jié)點(diǎn),其中,所述計(jì)算機(jī)系統(tǒng)使用了混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),這種存儲(chǔ)器系統(tǒng)具有多個(gè)能存儲(chǔ)數(shù)據(jù)的NUMA存儲(chǔ)器,每個(gè)NUMA存儲(chǔ)器均駐留于上述計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn);以及,至少一個(gè)能存儲(chǔ)數(shù)據(jù)的S-COMA高速緩沖存儲(chǔ)器,每個(gè)S-COMA高速緩沖存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn),所述客戶節(jié)點(diǎn)包括由該至少一個(gè)S-COMA高速緩沖存儲(chǔ)器構(gòu)成的S-COMA高速緩沖存儲(chǔ)器。所述產(chǎn)品中的計(jì)算機(jī)可讀程序代碼裝置包括用于使計(jì)算機(jī)在所述的多個(gè)節(jié)點(diǎn)中的客戶節(jié)點(diǎn)處生成對(duì)存儲(chǔ)器實(shí)地址的數(shù)據(jù)請(qǐng)求的計(jì)算機(jī)可讀程序代碼裝置;用于使計(jì)算機(jī)確定該實(shí)地址是否包括客戶節(jié)點(diǎn)處的本地實(shí)地址的計(jì)算機(jī)可讀程序代碼裝置;用于使計(jì)算機(jī)在所述實(shí)地址包括一本地實(shí)地址時(shí)確定是否需要邊界函數(shù)變換的計(jì)算機(jī)可讀程序代碼裝置,所述邊界函數(shù)變換可將本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址;以及,用于使計(jì)算機(jī)在上述邊界函數(shù)變換被需要之時(shí)將本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址的計(jì)算機(jī)可讀程序代碼裝置,其中,基地節(jié)點(diǎn)實(shí)地址包括一網(wǎng)絡(luò)地址,客戶節(jié)點(diǎn)在請(qǐng)求存取基地節(jié)點(diǎn)實(shí)地址處的數(shù)據(jù)時(shí)使用該網(wǎng)絡(luò)地址。
如前所述的混合NUMA/S-COMA系統(tǒng)有多種優(yōu)點(diǎn)。利用所提供的真正綜合的系統(tǒng),可避免對(duì)獨(dú)立的S-COMA關(guān)聯(lián)和通訊設(shè)備及獨(dú)立的NUMA關(guān)聯(lián)和通訊設(shè)備的需要。如本文所述,盡管集成了S-COMA的功能,但可使用NUMA管理器來(lái)移動(dòng)數(shù)據(jù)并保持節(jié)點(diǎn)間的關(guān)聯(lián)性。利用本文所提供的組合系統(tǒng),可以獲得S-COMA的靈活的大巨的主存儲(chǔ)器高速緩沖存儲(chǔ)器,它可在不需要專用高速緩沖存儲(chǔ)器的情況下為各個(gè)節(jié)點(diǎn)提供(超越純粹的NUMA實(shí)施方案的)額外緩存容量。依照本發(fā)明實(shí)現(xiàn)的上述混合系統(tǒng)能獲得S-COMA實(shí)施方案的非常高的效率,從而能獲得最佳的NUMA機(jī)制并避免在基地節(jié)點(diǎn)上作全局址址與實(shí)地址之間的變換。
連同附圖從以下對(duì)本發(fā)明的某些實(shí)施例的詳細(xì)說(shuō)明中可以更容易地理解本發(fā)明的上述目的、優(yōu)點(diǎn)和特征以及其它內(nèi)容,在附圖中圖1是典型的均等存儲(chǔ)器存取(UMA)結(jié)構(gòu)的一個(gè)實(shí)施例的圖;圖2是非均等存儲(chǔ)器存取(NUMA)結(jié)構(gòu)的一個(gè)實(shí)施例的圖;圖3說(shuō)明了一通用的只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(S-COMA);圖4是對(duì)依照本發(fā)明實(shí)現(xiàn)的混合NUMA/S-COMA系統(tǒng)的高層說(shuō)明;圖5是本發(fā)明的混合NUMA/S-COMA系統(tǒng)中的在客戶節(jié)點(diǎn)處實(shí)現(xiàn)的存儲(chǔ)器請(qǐng)求邏輯的一個(gè)實(shí)施例的流程圖;圖6是本發(fā)明的混合NUMA/S-COMA系統(tǒng)中的在基地節(jié)點(diǎn)處實(shí)現(xiàn)的存儲(chǔ)器請(qǐng)求邏輯的流程圖;圖7是本發(fā)明的混合NUMA/S-COMA系統(tǒng)中的發(fā)請(qǐng)求的節(jié)點(diǎn)處的輸入存儲(chǔ)器請(qǐng)求處理邏輯的一個(gè)實(shí)施例的流程圖;圖8是本發(fā)明的混合NUMA/S-COMA系統(tǒng)中的基地節(jié)點(diǎn)處的混合存儲(chǔ)器輸出處理邏輯的一個(gè)實(shí)施例的流程圖;圖9是本發(fā)明的混合NUMA/S-COMA系統(tǒng)的發(fā)請(qǐng)求的節(jié)點(diǎn)處的混合存儲(chǔ)器輸入處理邏輯的一個(gè)實(shí)施例的流程圖。
本發(fā)明提供了一種這樣的方法,它用于在非均等存儲(chǔ)器存取(NUMA)基礎(chǔ)結(jié)構(gòu)的頂層上形成只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(S-COMA)系統(tǒng),以便將NUMA關(guān)聯(lián)設(shè)備用于數(shù)據(jù)訪問(wèn)捕獲、數(shù)據(jù)移動(dòng)和關(guān)聯(lián)性管理。依照這種S-COMA組織,可將各節(jié)點(diǎn)上的主存儲(chǔ)器的一部分用作全局存儲(chǔ)器的數(shù)據(jù)高速緩沖存儲(chǔ)器。這些S-COMA高速緩沖存儲(chǔ)器中的每個(gè)高速緩沖存儲(chǔ)器均由對(duì)它們進(jìn)行使用的本地節(jié)點(diǎn)來(lái)管理。
利用本發(fā)明,對(duì)來(lái)自基地節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行緩存的各個(gè)節(jié)點(diǎn)均能將數(shù)據(jù)緩存在正常的NUMA層次結(jié)構(gòu)內(nèi),并且能在彼此無(wú)關(guān)且在基地節(jié)點(diǎn)不特別通知它們緩存決定的情況下可選地將數(shù)據(jù)緩存在S-COMA高速緩沖存儲(chǔ)器內(nèi)。
以上內(nèi)容是將NUMA基地本地實(shí)地址用作用于S-COMA高速緩沖存儲(chǔ)器的全局地址并將基地本地實(shí)地址變換成用于執(zhí)行客戶節(jié)點(diǎn)上的關(guān)聯(lián)協(xié)議的客戶本地實(shí)地址而實(shí)現(xiàn)的。同樣,就從客戶傳到基地的關(guān)聯(lián)消息而言,在傳給與節(jié)點(diǎn)相連的網(wǎng)絡(luò)之前將客戶本地實(shí)地址變換成全局地址,該全局地址呈基地本地實(shí)地址的形式。
在標(biāo)準(zhǔn)的S-COMA實(shí)現(xiàn)形式中,所有的節(jié)點(diǎn)都保持著用于所訪問(wèn)的全局?jǐn)?shù)據(jù)的S-COMA高速緩沖存儲(chǔ)器,即使是數(shù)據(jù)的基地節(jié)點(diǎn)也是這樣。在基地節(jié)點(diǎn)使數(shù)據(jù)進(jìn)入其本地存儲(chǔ)器以供客戶節(jié)點(diǎn)使用時(shí),該基地節(jié)點(diǎn)就必須將數(shù)據(jù)保持在自己的S-COMA高速緩沖存儲(chǔ)器內(nèi)。為了S-COMA設(shè)備能對(duì)數(shù)據(jù)的訪問(wèn)進(jìn)行控制以便進(jìn)行關(guān)聯(lián)性管理,這一點(diǎn)是必需的。
利用本發(fā)明,S-COMA高速緩沖存儲(chǔ)器僅用于保存在別處返回的被緩存的數(shù)據(jù)行。不必將數(shù)據(jù)行緩存在基地節(jié)點(diǎn)的S-COMA高速緩沖存儲(chǔ)器內(nèi),因?yàn)?,所有關(guān)聯(lián)性管理都是由基地NUMA設(shè)備進(jìn)行的,也就是說(shuō),通常的(非S-COMA)存儲(chǔ)器保存著本地?cái)?shù)據(jù)行,并且NUMA目錄會(huì)跟蹤在該節(jié)點(diǎn)處返回的數(shù)據(jù)行的使用。在需要關(guān)聯(lián)動(dòng)作時(shí),就用標(biāo)準(zhǔn)的NUMA機(jī)制把關(guān)聯(lián)消息傳給其它節(jié)點(diǎn),并將發(fā)送數(shù)據(jù)行的基地實(shí)地址。
以與S-COMA系統(tǒng)上的全局地址同樣的方式使用基地實(shí)地址。S-COMA客戶節(jié)點(diǎn)會(huì)對(duì)傳入和傳出該節(jié)點(diǎn)的地址進(jìn)行“邊界函數(shù)”變換。這一點(diǎn)與在標(biāo)準(zhǔn)S-COMA實(shí)現(xiàn)方案中出現(xiàn)的在全局地址與本地實(shí)地址之間進(jìn)行變換的變換相類似。但是,在所述的混合實(shí)現(xiàn)方案中,客戶直接在基地節(jié)點(diǎn)所使用的基地實(shí)地址與表示客戶的本地實(shí)存儲(chǔ)器中的S-COMA高速緩沖存儲(chǔ)器的客戶實(shí)地址之間進(jìn)行變換。
圖4示出了本發(fā)明的一個(gè)實(shí)施例,它說(shuō)明了本文所提出的用于混合NUMA/S-COMA環(huán)境的多種地址之間的關(guān)系。所說(shuō)的環(huán)境包括基地節(jié)點(diǎn)40和客戶節(jié)點(diǎn)42,每個(gè)節(jié)點(diǎn)均分別包括實(shí)地址(RAH)和(RAL)。和圖3一樣,客戶節(jié)點(diǎn)42保持有本地實(shí)地址空間46內(nèi)的S-COMA高速緩沖存儲(chǔ)器44,它獨(dú)立于基本節(jié)點(diǎn)40。但是,與圖3的實(shí)施例不同,不按規(guī)范的全局地址而是按基地節(jié)點(diǎn)40所使用的實(shí)地址(RAH)或(RAhome)進(jìn)行基地節(jié)點(diǎn)40與客戶節(jié)點(diǎn)42之間的通訊??蛻艄?jié)點(diǎn)42將NUMA管理器中按邊界函數(shù)49接收到的實(shí)地址變換成相應(yīng)的本地實(shí)地址(RAL)或(RALocal),該地址指向客戶的S-COMA高速緩沖存儲(chǔ)器44。
本發(fā)明的一個(gè)方面是進(jìn)行從按整個(gè)系統(tǒng)來(lái)使用的NUMA地址到局部地址的變換,所述局部地址僅能應(yīng)用于與基地相通訊的各個(gè)節(jié)點(diǎn)上的S-COMA高速緩沖存儲(chǔ)器。
諸如NUMA之類的全局存儲(chǔ)器系統(tǒng)使用了分布于系統(tǒng)中多個(gè)節(jié)點(diǎn)的地址空間。該地址本身表示節(jié)點(diǎn)為所尋址的數(shù)據(jù)提供了后備存儲(chǔ)器。例如,在一個(gè)很簡(jiǎn)單的系統(tǒng)中,地址的高位字節(jié)可指定節(jié)點(diǎn)號(hào),而地址的其余部分則指定節(jié)點(diǎn)中的存儲(chǔ)器存儲(chǔ)單元。
在一個(gè)節(jié)點(diǎn)接收到了輸入自其它節(jié)點(diǎn)的基地地址時(shí),此節(jié)點(diǎn)就將該地址變換成某種“相關(guān)地址”即直接對(duì)應(yīng)于基地地址的本地地址,以便作進(jìn)一步處理。這樣作的好處是,本地節(jié)點(diǎn)可同S-COMA一樣以與系統(tǒng)其它部分無(wú)關(guān)的方式管理自己的地址。在各個(gè)節(jié)點(diǎn)均運(yùn)行有一獨(dú)立的操作系統(tǒng)實(shí)例的多操作系統(tǒng)環(huán)境中,這一點(diǎn)特別重要。請(qǐng)注意,還可用“節(jié)點(diǎn)的子集”來(lái)代替術(shù)語(yǔ)“各個(gè)節(jié)點(diǎn)”。為簡(jiǎn)明起見(jiàn),以下使用術(shù)語(yǔ)“各個(gè)節(jié)點(diǎn)”,并將該術(shù)語(yǔ)理解成是指操作受控于單個(gè)操作系統(tǒng)實(shí)例的一個(gè)節(jié)點(diǎn)或一組節(jié)點(diǎn)。
在本文中,地址變換機(jī)制是指邊界函數(shù)。在各個(gè)節(jié)點(diǎn)上,邊界函數(shù)保持有一目錄,它用于跟蹤在被節(jié)點(diǎn)發(fā)送或接收時(shí)需要進(jìn)行變換的存儲(chǔ)器地址??赏ㄟ^(guò)(用于本地存儲(chǔ)器訪問(wèn)的)窺探邏輯和(用于從遠(yuǎn)程節(jié)點(diǎn)進(jìn)行訪問(wèn)的)網(wǎng)絡(luò)邏輯來(lái)存取所說(shuō)的目錄。各個(gè)目錄的條目均包含有所關(guān)心的數(shù)據(jù)行的本地實(shí)地址和相應(yīng)的基地節(jié)點(diǎn)地址。如果條目中的標(biāo)志指示出需要進(jìn)行變換,那么,就用來(lái)自目錄條目的“相關(guān)地址”來(lái)代替輸入的地址。
依照上述S-COMA組織,將主存儲(chǔ)器的一部分用作全局存儲(chǔ)器的數(shù)據(jù)高速緩沖存儲(chǔ)器。這些S-COMA高速緩沖存儲(chǔ)器中的每一個(gè)均由使用它們的本地節(jié)點(diǎn)來(lái)管理。
將NUMA機(jī)制用于提供數(shù)據(jù)訪問(wèn)捕獲、數(shù)據(jù)移動(dòng)和關(guān)聯(lián)機(jī)制。這就避免了需要對(duì)用于數(shù)據(jù)訪問(wèn)捕獲、數(shù)據(jù)移動(dòng)和關(guān)聯(lián)的獨(dú)立S-COMA機(jī)制。以下進(jìn)一步逐條說(shuō)明本發(fā)明的這些方面。
1、起點(diǎn)是諸如圖2所示的NUMA系統(tǒng)。在該NUMA系統(tǒng)中,系統(tǒng)的實(shí)地址空間分布于節(jié)點(diǎn)之間并且是可共享的(即任何一個(gè)節(jié)點(diǎn)都可訪問(wèn)任何一個(gè)存儲(chǔ)器存儲(chǔ)單元)。NUMA系統(tǒng)包含有這樣的設(shè)備,它用于保持各存儲(chǔ)器存儲(chǔ)單元的關(guān)聯(lián)性、保持可對(duì)特定存儲(chǔ)器存儲(chǔ)單元進(jìn)行緩存的客戶列表并將關(guān)聯(lián)請(qǐng)求發(fā)送給基地或客戶存儲(chǔ)器存儲(chǔ)單元。
2、關(guān)聯(lián)性目錄各個(gè)NMC均保持有一個(gè)表,該表帶一個(gè)條目,此條目用于存儲(chǔ)器的在節(jié)點(diǎn)處返回的各個(gè)數(shù)據(jù)行。在每一個(gè)條目中都有緩存有數(shù)據(jù)行的客戶節(jié)點(diǎn)的列表。所說(shuō)的表以實(shí)存儲(chǔ)器地址為索引。
3、系統(tǒng)軟件將各節(jié)點(diǎn)上的主存儲(chǔ)器的一部分分配為S-COMA高速緩沖存儲(chǔ)器。
4、邊界函數(shù)變換表每個(gè)NMC均保持有一個(gè)表,該表帶有一個(gè)條目,此條目用于存儲(chǔ)器的被用作S-COMA高速緩沖存儲(chǔ)器的各個(gè)頁(yè)。每個(gè)條目中都有包含著所緩存的數(shù)據(jù)的基地節(jié)點(diǎn)實(shí)地址(RAhome)。該表由本地實(shí)存儲(chǔ)器地址(RAlocal)來(lái)索引。盡管可能是低效的查找,但仍可通過(guò)將基地實(shí)存儲(chǔ)器地址用作輸入并發(fā)送本地實(shí)存儲(chǔ)器地址來(lái)找到一個(gè)條目。
5、NUMA存儲(chǔ)器子系統(tǒng)將本地S-COMA高速緩沖存儲(chǔ)器范圍內(nèi)的所有地址均看作是在別處返回的地址。也就是說(shuō),本地NMC不啟動(dòng)用于本地S-COMA高速緩沖存儲(chǔ)器范圍內(nèi)的地址的關(guān)聯(lián)動(dòng)作,相反,它進(jìn)行邊界函數(shù)變換,并將存儲(chǔ)器請(qǐng)求傳給與邊界函數(shù)變換表中的目標(biāo)本地實(shí)地址相對(duì)應(yīng)的基地節(jié)點(diǎn)實(shí)地址(RAhome)的基地。
6、每個(gè)NMC均僅為從節(jié)點(diǎn)輸出或輸入給節(jié)點(diǎn)的操作而查找BF變換表,然后僅為不是基地的地址查找BF變換表。這稱為邊界函數(shù)。
7、用來(lái)自上述變換表的“相關(guān)值”數(shù)據(jù)地址來(lái)代替輸出數(shù)據(jù)中的數(shù)據(jù)地址。
當(dāng)客戶節(jié)點(diǎn)通過(guò)其本地實(shí)地址來(lái)訪問(wèn)S-COMA高速緩沖存儲(chǔ)器中的數(shù)據(jù)并且本地關(guān)聯(lián)目錄中的狀態(tài)表示無(wú)效時(shí),通常的NUMA機(jī)制就會(huì)阻止所說(shuō)的本地訪問(wèn),BF將本地實(shí)地址變換為基地節(jié)點(diǎn)實(shí)地址,并且,將通過(guò)通常的NUMA機(jī)制將對(duì)數(shù)據(jù)的請(qǐng)求發(fā)送給基地節(jié)點(diǎn)。請(qǐng)注意,NUMA子系統(tǒng)可發(fā)送對(duì)數(shù)據(jù)行的請(qǐng)求,因?yàn)椋W(wǎng)絡(luò)地址是實(shí)際的NUMA地址。
不執(zhí)行任何邊界函數(shù)的基地節(jié)點(diǎn)將會(huì)接收請(qǐng)求并用標(biāo)準(zhǔn)的NUMA邏輯來(lái)作用于該請(qǐng)求。在響應(yīng)消息中將所請(qǐng)求的數(shù)據(jù)送回給客戶節(jié)點(diǎn)。
客戶節(jié)點(diǎn)接收對(duì)所請(qǐng)求的數(shù)據(jù)的響應(yīng)并對(duì)網(wǎng)絡(luò)地址(即基地節(jié)點(diǎn)實(shí)地址)進(jìn)行BF查找。若在BF變換表中找到了RAhome,則BF用來(lái)自該變換表的相應(yīng)本地實(shí)地址來(lái)代替所說(shuō)的地址。存儲(chǔ)器控制器在關(guān)聯(lián)目錄中將數(shù)據(jù)行標(biāo)記為有效并將數(shù)據(jù)應(yīng)答傳給客戶節(jié)點(diǎn)的發(fā)請(qǐng)求的處理器。這就完成了請(qǐng)求。
當(dāng)客戶節(jié)點(diǎn)通過(guò)其本地實(shí)地址來(lái)訪問(wèn)S-COMA高速緩沖存儲(chǔ)器中的數(shù)據(jù)并且所述狀態(tài)表示有效時(shí),數(shù)據(jù)行就處于S-COMA高速緩沖存儲(chǔ)器內(nèi)并且不需要有其它的動(dòng)作。不需要BF變換,并且,通常的NUMA僅按本地存儲(chǔ)器的延遲時(shí)間將數(shù)據(jù)從本地存儲(chǔ)器返回。
當(dāng)基地節(jié)點(diǎn)將關(guān)聯(lián)性請(qǐng)求送出給客戶節(jié)點(diǎn)時(shí),基地節(jié)點(diǎn)通過(guò)使用它本身的NUMA地址(它代替純粹S-COMA系統(tǒng)中的全局地址)來(lái)作到這一點(diǎn)。各個(gè)客戶節(jié)點(diǎn)均能接收上述請(qǐng)求,并且,正如在BF變換表中找到的那樣,BF將輸入的地址(基地節(jié)點(diǎn)實(shí)地址)變換成本地地址。然后,用本地地址(RAlocal)在本地處理所說(shuō)的請(qǐng)求。
圖5-9說(shuō)明了本發(fā)明混合NUMA/S-COMA系統(tǒng)中實(shí)現(xiàn)的邏輯流程的一個(gè)實(shí)施例。在以下的說(shuō)明中,假定是圖4的系統(tǒng),其中,發(fā)請(qǐng)求的處理器包括客戶節(jié)點(diǎn),并且,存儲(chǔ)器管理單元(MMU)包括如前所述的NUMA存儲(chǔ)器控制器(NMC)。此外,物理地址(PA)等價(jià)于如前所述的實(shí)地址(RA)。
從圖5開始,邏輯流程始于標(biāo)號(hào)100,客戶節(jié)點(diǎn)或發(fā)請(qǐng)求的處理器將數(shù)據(jù)行的虛地址(VA)提供給本地存儲(chǔ)器管理單元(MMU)110。本地MMU將VA轉(zhuǎn)換成物理地址(PA),并且,邏輯流程確定在發(fā)請(qǐng)求的處理器的硬件高速緩沖存儲(chǔ)器之一中是否存在有預(yù)定數(shù)據(jù)行的有效拷貝120。正如在本文中所使用的那樣,“第2級(jí)高速緩沖存儲(chǔ)器”是指以下將進(jìn)一步說(shuō)明的通?;驑?biāo)準(zhǔn)的高速緩沖存儲(chǔ)器而不是S-COMA高速緩沖存儲(chǔ)器。如果數(shù)據(jù)存在于本地標(biāo)準(zhǔn)高速緩沖存儲(chǔ)器內(nèi),則L2高速緩沖存儲(chǔ)器就將數(shù)據(jù)行提供給發(fā)請(qǐng)求的處理器130,并且,結(jié)束數(shù)據(jù)檢索過(guò)程140。
如果物理數(shù)據(jù)不存在于請(qǐng)求者的硬件高速緩沖存儲(chǔ)器之一中,則L2高速緩沖存儲(chǔ)器將物理地址(PA)提供給發(fā)請(qǐng)求的子系統(tǒng)的NUMA存儲(chǔ)器控制器(NMC)150,在NMC處查詢物理地址是否是傳給發(fā)請(qǐng)求的處理器的本地物理地址160。如果“是”,則使用圖8的混合存儲(chǔ)器輸出處理170,如以下所述。從本質(zhì)上說(shuō),圖8的邏輯流程確定物理地址是否是發(fā)請(qǐng)求的處理器的本地S-COMA高速緩沖存儲(chǔ)器的一部分。如果物理地址不包括本地物理地址,則數(shù)據(jù)行處于遠(yuǎn)程物理地址,并且,所述邏輯流程返回至純粹的NUMA處理實(shí)例,其中,發(fā)請(qǐng)求的NMC將數(shù)據(jù)請(qǐng)求傳給基地子系統(tǒng)180,該基地子系統(tǒng)具有消息請(qǐng)求中的數(shù)據(jù)地址。
所述邏輯流程從發(fā)請(qǐng)求的節(jié)點(diǎn)轉(zhuǎn)向190圖6的基地節(jié)點(diǎn)處理過(guò)程200,其中,基地子系統(tǒng)接收請(qǐng)求消息并對(duì)關(guān)聯(lián)目錄進(jìn)行更新以反映對(duì)讀取請(qǐng)求的應(yīng)答,即數(shù)據(jù)行的新?tīng)顟B(tài)210。數(shù)據(jù)行的新?tīng)顟B(tài)表示處理節(jié)點(diǎn)具有數(shù)據(jù)行的有效拷貝,它是傳統(tǒng)的NUMA處理過(guò)程,以跟蹤正在對(duì)該受支配的數(shù)據(jù)行進(jìn)行緩存的那些客戶節(jié)點(diǎn)以及數(shù)據(jù)行的狀態(tài),即有效或無(wú)效。然后,基地子系統(tǒng)確定它在基地存儲(chǔ)器內(nèi)是否具有有效的數(shù)據(jù)拷貝220,如果“否”,則基地子系統(tǒng)使用傳統(tǒng)的NUMA處理過(guò)程,以使從緩存客戶子系統(tǒng)中再調(diào)用所緩存的數(shù)據(jù)行拷貝230。一旦基地子系統(tǒng)在存儲(chǔ)器中具有有效的數(shù)據(jù)行拷貝,就將數(shù)據(jù)提供給發(fā)請(qǐng)求的子系統(tǒng)240,并且,所述邏輯流程轉(zhuǎn)向發(fā)請(qǐng)求的子系統(tǒng)以便如圖7所示那樣作進(jìn)一步的處理250。
在從基地子系統(tǒng)接收到返回?cái)?shù)據(jù)時(shí),就通過(guò)確定在客戶節(jié)點(diǎn)處接收到的物理地址是否是本地物理地址310來(lái)開始發(fā)請(qǐng)求的子系統(tǒng)處的處理過(guò)程300。如果不是,則依照本發(fā)明進(jìn)行圖9的混合存儲(chǔ)器輸入處理310。
如圖9所示,輸入處理500始于在發(fā)請(qǐng)求的子系統(tǒng)處從基地子系統(tǒng)接收請(qǐng)求數(shù)據(jù)510。然后,發(fā)請(qǐng)求的NMC通過(guò)將所接收到的數(shù)據(jù)地址用作如前所述的“網(wǎng)絡(luò)地址”而對(duì)響應(yīng)消息中的數(shù)據(jù)地址執(zhí)行邊界函數(shù)目錄查找520。如果在邊界函數(shù)變換表中找到了網(wǎng)絡(luò)地址(NA)530,則將數(shù)據(jù)地址從網(wǎng)絡(luò)地址變換成邊界函數(shù)變換表中的相應(yīng)本地實(shí)地址(RAlocal)以供發(fā)請(qǐng)求的子系統(tǒng)使用540。如果在變換表中未找到網(wǎng)絡(luò)地址,或者已根據(jù)邊界函數(shù)進(jìn)行了地址變換,則處理過(guò)程返回至圖7的邏輯流程550。
按圖7的發(fā)請(qǐng)求的子系統(tǒng)的處理過(guò)程繼續(xù),如果物理地址是本地物理地址,或者在圖9的混合存儲(chǔ)器輸入處理過(guò)程之后,發(fā)請(qǐng)求的NMC將數(shù)據(jù)應(yīng)答傳給發(fā)請(qǐng)求的處理器330,并且,可任選地將數(shù)據(jù)行存儲(chǔ)在L2高速緩沖存儲(chǔ)器(即通常的硬件高速緩沖存儲(chǔ)器)內(nèi)340,以便后續(xù)使用。這就結(jié)束了本發(fā)明這一實(shí)施例的處理過(guò)程350。
參照?qǐng)D5,如果物理地址是本地地址,那么,就可從查詢160開始執(zhí)行圖8的混合存儲(chǔ)器輸出處理過(guò)程。這一處理過(guò)程通過(guò)發(fā)請(qǐng)求的NMC存取關(guān)聯(lián)目錄以確定在請(qǐng)求者的本地中數(shù)據(jù)行是否處于有效狀態(tài)410而始于發(fā)請(qǐng)求的子系統(tǒng)400。如果回答是“是”,則本地存儲(chǔ)器在與存儲(chǔ)器是否是S-COMA高速緩沖存儲(chǔ)器無(wú)關(guān)的請(qǐng)況下將數(shù)據(jù)行提供給發(fā)請(qǐng)求的存儲(chǔ)器430,從而結(jié)束了檢索處理過(guò)程440。
如果本地存儲(chǔ)器中沒(méi)有有效的數(shù)據(jù)拷貝,則邏輯流程確定是否需要邊界函數(shù)450,即通過(guò)確定所請(qǐng)求的地址是否在S-COMA高速緩沖存儲(chǔ)器的范圍內(nèi)來(lái)確定是否需要邊界函數(shù)。如果為“否”,則不是S-COMA環(huán)境,并且,數(shù)據(jù)被檢查后輸出給系統(tǒng)的另一個(gè)節(jié)點(diǎn)。如果所選定的地址是S-COMA高速緩沖存儲(chǔ)器的一部分,則必須將該地址變換為子系統(tǒng)所能理解的基地地址。因此,請(qǐng)求邊界函數(shù)可存取邊界函數(shù)變換表并將請(qǐng)求中的本地實(shí)地址變換成網(wǎng)絡(luò)地址460,然后,將該網(wǎng)絡(luò)地址如前所述那樣傳給基地子系統(tǒng)470,從而結(jié)束了圖8的混合輸出處理過(guò)程480。
概括地說(shuō),本領(lǐng)域的技術(shù)人員會(huì)從上述說(shuō)明中認(rèn)識(shí)到,本文所述的混合NUMA/S-COMA系統(tǒng)有多種優(yōu)點(diǎn)。所提供的系統(tǒng)包括一個(gè)真正綜合的系統(tǒng),其中,通過(guò)使用NUMA關(guān)聯(lián)和通訊設(shè)備可消除對(duì)獨(dú)立的S-COMA關(guān)聯(lián)和通訊設(shè)備的需要。如本文所述,盡管集成了S-COMA的功能,但可使用NUMA管理器來(lái)移動(dòng)數(shù)據(jù)并保持節(jié)點(diǎn)間的關(guān)聯(lián)性。利用所提供的組合系統(tǒng),可以獲得S-COMA的靈活的大型主存儲(chǔ)器高速緩沖存儲(chǔ)器,它可在不需要專用高速緩沖存儲(chǔ)器的情況下為各個(gè)節(jié)點(diǎn)提供超越純粹NUMA形式的額外的緩存容量。最佳的是,所提供的實(shí)現(xiàn)形式可避免在基地節(jié)點(diǎn)上作全局址址與實(shí)地址之間的變換。
本發(fā)明例如可被包括在一產(chǎn)品(例如一個(gè)或多個(gè)計(jì)算機(jī)程序產(chǎn)品)中,該產(chǎn)品例如帶有計(jì)算機(jī)可用的媒體。這種媒體中例如帶有計(jì)算用于提供和發(fā)揮本發(fā)明的效能的計(jì)算機(jī)可讀程序代碼裝置。所述的產(chǎn)品可被包括為計(jì)算機(jī)系統(tǒng)的一部分或者單獨(dú)出售。
此外,可提供至少一種機(jī)器可讀的程序存儲(chǔ)設(shè)備,它以有形的方式實(shí)現(xiàn)了至少一種機(jī)器可執(zhí)行的、由指令構(gòu)成的程序,以便實(shí)現(xiàn)本發(fā)明的效能。
以舉例的方式提供了本文所述的流程圖。在不脫離本發(fā)明精神的情況下,本文所述的流程圖或其步驟(或操作)可能有變化的形式。例如,在某些情況下,可按不同的次序執(zhí)行上述步驟,或者對(duì)這些步驟進(jìn)行增、刪和修改。所有這些變化形式均被認(rèn)為是包括了如后附權(quán)利要求所述的本發(fā)明的一部分。
盡管依照本發(fā)明的某些最佳實(shí)施例詳細(xì)說(shuō)明了本發(fā)明,但是,本領(lǐng)域的技術(shù)人員可實(shí)現(xiàn)多種改進(jìn)形式和變化形式。因此,后附權(quán)利要求涵蓋了本發(fā)明實(shí)質(zhì)精神和范圍內(nèi)的所有改進(jìn)形式和變化形式。
權(quán)利要求
1.一種混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),該系統(tǒng)與具有多個(gè)彼此相連的節(jié)點(diǎn)的計(jì)算機(jī)一道使用,其中,將數(shù)據(jù)作為多個(gè)頁(yè)存儲(chǔ)在混合NUMA/S-COMA存儲(chǔ)器系統(tǒng)內(nèi),每個(gè)頁(yè)均包括至少一個(gè)數(shù)據(jù)行,所述混合NUMA/S-COMA存儲(chǔ)器系統(tǒng)包括多個(gè)NUMA存儲(chǔ)器,它們配置成能存儲(chǔ)至少一個(gè)數(shù)據(jù)行,所述多個(gè)NUMA存儲(chǔ)器的每個(gè)NUMA存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的不同節(jié)點(diǎn),并且,所述多個(gè)NUMA存儲(chǔ)器包括NUMA關(guān)聯(lián)子系統(tǒng),它用于協(xié)調(diào)數(shù)據(jù)在多個(gè)NUMA存儲(chǔ)器之間的傳遞,以及至少一個(gè)S-COMA高速緩沖存儲(chǔ)器,它配置成能存儲(chǔ)上述多個(gè)頁(yè)中的至少一個(gè)頁(yè),所述至少一個(gè)S-COMA高速緩沖存儲(chǔ)器的每個(gè)S-COMA高速緩沖存儲(chǔ)器駐留于上述計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的不同節(jié)點(diǎn),所述至少一個(gè)S-COMA高速緩沖存儲(chǔ)器在將數(shù)據(jù)傳給計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)內(nèi)的另一個(gè)節(jié)點(diǎn)或從計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)內(nèi)的另一個(gè)節(jié)點(diǎn)中接收數(shù)據(jù)時(shí)使用了所述NUMA關(guān)聯(lián)子系統(tǒng)。
2.如權(quán)利要求1的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述至少一個(gè)S-COMA高速緩沖存儲(chǔ)器包括多個(gè)S-COMA高速緩沖存儲(chǔ)器,并且,所述NUMA關(guān)聯(lián)子系統(tǒng)包括NUMA關(guān)聯(lián)協(xié)議,它位于上述多個(gè)節(jié)點(diǎn)中的一個(gè)可將來(lái)自所述計(jì)算機(jī)系統(tǒng)的所述多個(gè)節(jié)點(diǎn)中的基地節(jié)點(diǎn)的數(shù)據(jù)緩存在上述S-COMA高速緩沖存儲(chǔ)器之一內(nèi)的客戶節(jié)點(diǎn)上,所述NUMA關(guān)聯(lián)協(xié)議用于在前述客戶節(jié)點(diǎn)與基地節(jié)點(diǎn)之間傳送S-COMA關(guān)聯(lián)消息。
3.如權(quán)利要求2的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述客戶節(jié)點(diǎn)處的帶有關(guān)聯(lián)協(xié)議的NUMA關(guān)聯(lián)子系統(tǒng)包括一位于客戶節(jié)點(diǎn)處的邊界函數(shù)變換表,它用于在所述客戶節(jié)點(diǎn)的一個(gè)S-COMA高速緩沖存儲(chǔ)器與基地節(jié)點(diǎn)之間發(fā)送消息時(shí)在基地節(jié)點(diǎn)實(shí)地址與客戶節(jié)點(diǎn)實(shí)地址之間作轉(zhuǎn)換,其中,所述基地節(jié)點(diǎn)實(shí)地址包括這樣一個(gè)網(wǎng)絡(luò)地址,所述NUMA通訊系統(tǒng)在基地節(jié)點(diǎn)與客戶節(jié)點(diǎn)的S-COMA高速緩沖存儲(chǔ)器之間傳遞數(shù)據(jù)時(shí)使用該網(wǎng)絡(luò)地址。
4.如權(quán)利要求3的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,該系統(tǒng)還包括一個(gè)將所述多個(gè)節(jié)點(diǎn)連接起來(lái)的通訊網(wǎng)絡(luò),其中,所述NUMA關(guān)聯(lián)子系統(tǒng)包括用于使用上述邊界函數(shù)變換表的裝置以便將客戶節(jié)點(diǎn)實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址,所述基地節(jié)點(diǎn)實(shí)地址包括一網(wǎng)絡(luò)地址,以便在將消息從前述客戶節(jié)點(diǎn)傳給基地節(jié)點(diǎn)時(shí)傳到將上述多個(gè)節(jié)點(diǎn)相互連接起來(lái)的通訊網(wǎng)絡(luò)上。
5.如權(quán)利要求3的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,該系統(tǒng)還包括將所述多個(gè)節(jié)點(diǎn)連接起來(lái)的通訊網(wǎng)絡(luò),其中,所述NUMA關(guān)聯(lián)子系統(tǒng)包括用于在接收到客戶節(jié)點(diǎn)處的網(wǎng)絡(luò)地址時(shí)檢查上述邊界函數(shù)變換表并用于在所述網(wǎng)絡(luò)地址與從基地節(jié)點(diǎn)到所述客戶節(jié)點(diǎn)的一個(gè)S-COMA高速緩沖存儲(chǔ)器的消息相關(guān)聯(lián)時(shí)通過(guò)利用上述邊界函數(shù)變換表將所述網(wǎng)絡(luò)地址轉(zhuǎn)換成客戶節(jié)點(diǎn)實(shí)地址的裝置,所述網(wǎng)絡(luò)地址包括一基地節(jié)點(diǎn)實(shí)地址。
6.如權(quán)利要求1的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述至少一個(gè)S-COMA高速緩沖存儲(chǔ)器包括一在所述多個(gè)節(jié)點(diǎn)中的至少一個(gè)客戶節(jié)點(diǎn)處實(shí)現(xiàn)的S-COMA高速緩沖存儲(chǔ)器,以便將在別處返回的至少一個(gè)被緩存的頁(yè)保存在所說(shuō)的計(jì)算機(jī)內(nèi)。
7.如權(quán)利要求6的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述NUMA關(guān)聯(lián)子系統(tǒng)包括標(biāo)準(zhǔn)的NUMA關(guān)聯(lián)機(jī)制,所述至少一個(gè)S-COMA高速緩沖存儲(chǔ)器用該標(biāo)準(zhǔn)的NUMA關(guān)聯(lián)機(jī)制將S-COMA關(guān)聯(lián)消息發(fā)送給前述多個(gè)節(jié)點(diǎn)中的其它節(jié)點(diǎn)。
8.如權(quán)利要求6的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述客戶節(jié)點(diǎn)包括用于在不將存儲(chǔ)決定通知給基地節(jié)點(diǎn)的情況下將數(shù)據(jù)存儲(chǔ)在客戶節(jié)點(diǎn)處的S-COMA高速緩沖存儲(chǔ)器內(nèi)的裝置。
9.如權(quán)利要求8的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述客戶節(jié)點(diǎn)和基地節(jié)點(diǎn)具有獨(dú)立的操作系統(tǒng)。
10.如權(quán)利要求6的混合NUMA/S-COMA存儲(chǔ)器系統(tǒng),其特征在于,所述計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)包括多個(gè)客戶節(jié)點(diǎn),每個(gè)客戶節(jié)點(diǎn)均具有一S-COMA高速緩沖存儲(chǔ)器,并且包括用于對(duì)該S-COMA進(jìn)行管理的裝置,這個(gè)用于進(jìn)行管理的裝置包括用于使用NUMA關(guān)聯(lián)系統(tǒng)以便對(duì)S-COMA高速緩沖存儲(chǔ)器進(jìn)行關(guān)聯(lián)性管理的裝置。
11.一種用于在計(jì)算機(jī)系統(tǒng)的客戶節(jié)點(diǎn)與基地節(jié)點(diǎn)之間傳遞數(shù)據(jù)的方法,所述計(jì)算機(jī)系統(tǒng)具有多個(gè)彼此相連的節(jié)點(diǎn),其中,所述計(jì)算機(jī)系統(tǒng)使用了混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),這種系統(tǒng)具有多個(gè)能存儲(chǔ)數(shù)據(jù)的NUMA存儲(chǔ)器,每個(gè)NUMA存儲(chǔ)器均駐留于上述計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn);以及,至少一個(gè)能存儲(chǔ)數(shù)據(jù)的S-COMA高速緩沖存儲(chǔ)器,每個(gè)S-COMA高速緩沖存儲(chǔ)器均駐留于上述計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn),所述客戶節(jié)點(diǎn)包括由至少一個(gè)S-COMA高速緩沖存儲(chǔ)器構(gòu)成的S-COMA高速緩沖存儲(chǔ)器,所述傳遞方法包括(i)在前述計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的客戶節(jié)點(diǎn)處生成對(duì)存儲(chǔ)器實(shí)地址的數(shù)據(jù)請(qǐng)求;(ii)確定該實(shí)地址是否包括客戶節(jié)點(diǎn)處的本地實(shí)地址;(iii)當(dāng)所述實(shí)地址包括一本地實(shí)地址時(shí),確定是否需要對(duì)上述本地實(shí)地址作邊界函數(shù)變換,以便將該本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址;以及,(iv)在需要所述邊界函數(shù)變換時(shí),將所述本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址,其中,所述基地節(jié)點(diǎn)實(shí)地址包括這樣一個(gè)網(wǎng)絡(luò)地址,前述客戶節(jié)點(diǎn)在請(qǐng)求存取基地節(jié)點(diǎn)實(shí)地址處的數(shù)據(jù)時(shí)使用該網(wǎng)絡(luò)地址。
12.如權(quán)利要求11的方法,其特征在于,所述本地實(shí)地址包括一S-COMA高速緩沖存儲(chǔ)器地址,所述方法還包括利用前述多個(gè)NUMA存儲(chǔ)器的NUMA關(guān)聯(lián)子系統(tǒng)將一請(qǐng)求消息從前述客戶節(jié)點(diǎn)傳給基地節(jié)點(diǎn),所述請(qǐng)求消息包括上述網(wǎng)絡(luò)地址,該網(wǎng)絡(luò)地址包括所請(qǐng)求的數(shù)據(jù)的基地節(jié)點(diǎn)實(shí)地址。
13.如權(quán)利要求12的方法,其特征在于,該方法還包括在前述客戶節(jié)點(diǎn)處從所述基地節(jié)點(diǎn)中接收一應(yīng)答消息,所述應(yīng)答消息包括一實(shí)地址,并且,所述方法還包括確定前述應(yīng)答消息的實(shí)地址是否包括所述客戶節(jié)點(diǎn)的本地實(shí)地址。
14.如權(quán)利要求13的方法,其特征在于,所述實(shí)地址不同于前述客戶節(jié)點(diǎn)處的本地實(shí)地址,所述方法包括在客戶節(jié)點(diǎn)處對(duì)前述應(yīng)答消息中的實(shí)地址進(jìn)行邊界函數(shù)目錄查找,如果在邊界函數(shù)目錄查找中找到了所說(shuō)的實(shí)地址,就利用用于前述客戶節(jié)點(diǎn)的邊界函數(shù)變換表將該實(shí)地址從網(wǎng)絡(luò)地址變換成相應(yīng)的本地實(shí)地址。
15.如權(quán)利要求11的方法,其特征在于,所述客戶節(jié)點(diǎn)包括一NUMA存儲(chǔ)器控制器,并且,所述方法還包括請(qǐng)求上述客戶節(jié)點(diǎn)的NUMA存儲(chǔ)器控制器將數(shù)據(jù)請(qǐng)求從客戶節(jié)點(diǎn)傳給使用上述網(wǎng)絡(luò)地址的基地節(jié)點(diǎn),所述網(wǎng)絡(luò)地址包括上述基地節(jié)點(diǎn)實(shí)地址。
16.如權(quán)利要求11的方法,其特征在于,當(dāng)所述實(shí)地址不包括上述確定步驟(iii)中的本地實(shí)地址時(shí),所述方法還包括在前述客戶節(jié)點(diǎn)處請(qǐng)求NUMA存儲(chǔ)器控制器將數(shù)據(jù)請(qǐng)求傳給將前述實(shí)地址用作基地節(jié)點(diǎn)實(shí)地址的基地節(jié)點(diǎn)。
17.一種用于制造混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng)的方法。該方法包括提供一計(jì)算機(jī)系統(tǒng),它帶有多個(gè)彼此相連的節(jié)點(diǎn);使該計(jì)算機(jī)系統(tǒng)配備有一非均等存儲(chǔ)器存取(NUMA)結(jié)構(gòu),所述NUMA結(jié)構(gòu)包括NUMA關(guān)聯(lián)子系統(tǒng);以及在前述計(jì)算機(jī)系統(tǒng)的多個(gè)節(jié)點(diǎn)中的至少一個(gè)節(jié)點(diǎn)處形成只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(S-COMA)高速緩沖存儲(chǔ)器,上述形成S-COMA高速緩沖存儲(chǔ)器的步驟包括將上述S-COMA配置成能在不使用S-COMA關(guān)聯(lián)子系統(tǒng)的情況下使用所述NUMA關(guān)聯(lián)子系統(tǒng)來(lái)進(jìn)行數(shù)據(jù)訪問(wèn)捕獲、數(shù)據(jù)移動(dòng)以及關(guān)聯(lián)性管理。
18.一種產(chǎn)品,它包括至少一種計(jì)算機(jī)可用的媒體,該媒體中包括計(jì)算機(jī)可讀的程序代碼裝置,以便在計(jì)算機(jī)系統(tǒng)的客戶節(jié)點(diǎn)與基地節(jié)點(diǎn)之間傳遞數(shù)據(jù),所述計(jì)算機(jī)系統(tǒng)具有多個(gè)彼此相連的節(jié)點(diǎn),其中,所述計(jì)算機(jī)系統(tǒng)使用了混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),這種系統(tǒng)具有多個(gè)能存儲(chǔ)數(shù)據(jù)的NUMA存儲(chǔ)器,每個(gè)NUMA存儲(chǔ)器均駐留于存儲(chǔ)器系統(tǒng)的不同節(jié)點(diǎn);以及,至少一個(gè)能存儲(chǔ)數(shù)據(jù)的S-COMA高速緩沖存儲(chǔ)器,每個(gè)S-COMA高速緩沖存儲(chǔ)器均駐留于計(jì)算機(jī)系統(tǒng)的不同節(jié)點(diǎn),所述客戶節(jié)點(diǎn)包括由至少一個(gè)上述S-COMA高速緩沖存儲(chǔ)器構(gòu)成的S-COMA高速緩沖存儲(chǔ)器,所述產(chǎn)品中的計(jì)算機(jī)可讀程序代碼裝置包括(i)用于使計(jì)算機(jī)在所述的多個(gè)節(jié)點(diǎn)的客戶節(jié)點(diǎn)處生成帶有存儲(chǔ)器實(shí)地址的數(shù)據(jù)請(qǐng)求的計(jì)算機(jī)可讀程序代碼裝置;(ii)用于使計(jì)算機(jī)確定上述實(shí)地址是否包括客戶節(jié)點(diǎn)處的本地實(shí)地址的計(jì)算機(jī)可讀程序代碼裝置;(iii)用于使計(jì)算機(jī)在所述實(shí)地址包括一本地實(shí)地址時(shí)確定是否需要邊界函數(shù)變換的計(jì)算機(jī)可讀程序代碼裝置,所述邊界函數(shù)變換可將本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址;以及(iv)用于使計(jì)算機(jī)在上述邊界函數(shù)變換有需要時(shí)將本地實(shí)地址變換成基地節(jié)點(diǎn)實(shí)地址的計(jì)算機(jī)可讀程序代碼裝置,其中,所述基地節(jié)點(diǎn)實(shí)地址包括這樣一個(gè)網(wǎng)絡(luò)地址,客戶節(jié)點(diǎn)在請(qǐng)求存取基地節(jié)點(diǎn)實(shí)地址處的數(shù)據(jù)時(shí)使用該網(wǎng)絡(luò)地址。
19.如權(quán)利要求18的產(chǎn)品,其特征在于,所述本地實(shí)地址包括一S-COMA高速緩沖存儲(chǔ)器地址,所述產(chǎn)品還包括計(jì)算機(jī)可讀程序代碼裝置,它用于使計(jì)算機(jī)利用上述由多個(gè)NUMA存儲(chǔ)器構(gòu)成的NUMA關(guān)聯(lián)子系統(tǒng)將一請(qǐng)求消息從前述客戶節(jié)點(diǎn)傳給基地節(jié)點(diǎn),所述請(qǐng)求請(qǐng)求包括上述網(wǎng)絡(luò)地址,該網(wǎng)絡(luò)地址包括所請(qǐng)求數(shù)據(jù)的基地節(jié)點(diǎn)實(shí)地址。
20.如權(quán)利要求19的產(chǎn)品,其特征在于,該產(chǎn)品還包括計(jì)算機(jī)可讀程序代碼裝置,它用于使計(jì)算機(jī)在前述客戶節(jié)點(diǎn)處從所述基地節(jié)點(diǎn)接收一應(yīng)答消息,該應(yīng)答消息包括一實(shí)地址,并且,所述產(chǎn)品還包括計(jì)算機(jī)可讀程序代碼裝置,它用于使計(jì)算機(jī)確定上述應(yīng)答消息的實(shí)地址是否包括上述客戶節(jié)點(diǎn)的本地實(shí)地址。
21.如權(quán)利要求20的產(chǎn)品,其特征在于,當(dāng)所述實(shí)地址不包括前述客戶節(jié)點(diǎn)處的的本地實(shí)地址時(shí),所述產(chǎn)品就包括計(jì)算機(jī)可讀程序代碼裝置,它用于使計(jì)算機(jī)在客戶節(jié)點(diǎn)處對(duì)前述應(yīng)答消息中的實(shí)地址進(jìn)行邊界函數(shù)目錄查找,如果在邊界函數(shù)目錄查找中找到了所說(shuō)的實(shí)地址,所述產(chǎn)品就還包括計(jì)算機(jī)可讀程序代碼裝置,它用于使計(jì)算機(jī)利用用于前述客戶節(jié)點(diǎn)的邊界函數(shù)變換表將該實(shí)地址從網(wǎng)絡(luò)地址變換成相應(yīng)的本地實(shí)地址。
全文摘要
一種混合非均等存儲(chǔ)器結(jié)構(gòu)/只有簡(jiǎn)單高速緩沖存儲(chǔ)器的存儲(chǔ)器結(jié)構(gòu)(NUMA/S-COMA)存儲(chǔ)器系統(tǒng),它與具有多個(gè)彼此相連的節(jié)點(diǎn)的計(jì)算機(jī)一道使用。該多個(gè)節(jié)點(diǎn)包括NUMA存儲(chǔ)器,后者包括一NUMA關(guān)聯(lián)子系統(tǒng)。在計(jì)算機(jī)系統(tǒng)中的至少一個(gè)節(jié)點(diǎn)上設(shè)置至少一個(gè)S-COMA高速緩沖存儲(chǔ)器。通過(guò)將基地實(shí)地址用作網(wǎng)絡(luò)地址,可存取存儲(chǔ)在系統(tǒng)中的另一個(gè)節(jié)點(diǎn)處的數(shù)據(jù)。用邊界函數(shù)變換來(lái)將基地實(shí)地址變換成本地實(shí)地址。
文檔編號(hào)G06F15/16GK1263311SQ9912640
公開日2000年8月16日 申請(qǐng)日期1999年12月17日 優(yōu)先權(quán)日1999年1月27日
發(fā)明者D·A·利伯蒂 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1