TW533353B - Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention - Google Patents

Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention Download PDF

Info

Publication number
TW533353B
TW533353B TW088121887A TW88121887A TW533353B TW 533353 B TW533353 B TW 533353B TW 088121887 A TW088121887 A TW 088121887A TW 88121887 A TW88121887 A TW 88121887A TW 533353 B TW533353 B TW 533353B
Authority
TW
Taiwan
Prior art keywords
cache memory
processor
address line
memory address
copy
Prior art date
Application number
TW088121887A
Other languages
English (en)
Inventor
Yoanna Baumgartner
Anna Elman
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Application granted granted Critical
Publication of TW533353B publication Critical patent/TW533353B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration

Description

經濟部智慧財產局員工消費合作社印製 533353 五、發明說明(1 ) 相關申請案對照 本申请案係有關以下共同申請之專利申請案. (1) 案號〇8/837,516 ,‘‘用於一對稱多重處理器(sMp) 匯流排其共用狀態之快取記憶體位址線的共用介入方 法’’,1的7年4月14曰申請,此處合併以參考;以及 (2) 案號〇9/024,307,“具有全域及區域最新讀取狀態 之快取記憶體相關性協定,,,1998年2月i 7日申請, 此處合併以參考。 發明背景 1.技術領域: 本發明大致有關於一種資料處理之方法及系統,而尤其 有關一種非均勻記憶體存取(NUMA)資料系統内之資料處 理 更特別者,本發明有關一種非均勾記憶體存取 (NUMA)資料處理系統,以及一非均勻記憶體存取 (NUMA)資料處理系統中,一種身成^用— 介人而供腺敗身 求之資料的方法。 2 .相關技藝描述: 一著名之電腦技藝爲:可藉由彙接式套接多重個別處理 益之處理能九而if到較大的電獎系琢么能。多重處理器 (MP )電腦系統可以多種不同之拓樸加以設計,其中取決 於各種應用之效能需求以及軟體環境,多種拓樸可更適合 特定的應用。最晋遍的多重處理器(Mp)電腦拓樸之/爲 一對稱多重處理器(SMP )組態,其中多重處理器共用共同 資源,像是通常耦合至一共用之系統互連的一系統記憶體 -4- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) ' (請先閱讀背面之注意事項再填寫本頁) &________^---------線!------------------------ 533353 A7 _______B7 _ 五、發明說明(2 ) 以及輸入/輸出(I/O)子系統。這類電腦系統之所以稱爲^士 秦丨系由於理想狀況下,一對稱多重處理器(SMP)電腦系1絲^ 中’其所有處理器對於儲存於共用系統記憶體中之資料且 有相同的存取潛在期。 〃 雖然對稱多重處理器(SMP )電腦系統准許使用相對较爲 簡單之内部處理無以及資料共用法則,但對稱多重處 理备(SMP )電腦系統具有虚的大^、。換言之,雖然通常 可期待以比例(亦即增加更多處理器)改善一典型之對稱夕 重處理器(SMP )電腦系統的效能,但其所承繼之匯流排, 記憶體,以及輸入/輸出(I/O),頻寬限制阻礙了藉由將—對 稱多重處理器(SMP )依比例調整超過一實行相依大小所獲 得之大幅成長,該實行相依大小可使這些共用資源的利用 得以最佳化。因此,當系統比例增加廣,對稱多重處理器 (SMP)拓樸本身遭遇某種程度之頻寬限制,尤其良ii 憶體方.面。從製造效率之角度,對稱多重處理器(SMp )電 月包系統同樣並非爲良好之比例調整。例如,雖然可最佳化 某些组成,而用於單處理器以及小比例之對稱多重處理器 (SMP )電腦系統兩者,但通常這類組成用於大比例之對稱 多重處理器(SMP )將卻嫌不足。相反地,從成本之角度, 設計用於大比例之對稱多重處理器(SMp )的組成無法實降 用於較小的系統。 結果,出現一種稱爲、非始憶體存取(NUMA )之多重 處理器(ΜΡ )電腦系統拓樸,作爲一替代設計,其,遮參某 些額外之複身度以針對該對稱多重處理器(SMP )電腦系統 -5_ 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公f " (請先閱讀背面之注咅?事項再填寫本頁} I·- .--------訂--------·線丨- 經濟部智慧財產局員工消費合作社印製 533353 A7 ___B7____ 五、發明說明(3 ) 經濟部智慧財產局員工消費合作社印製 -------------fi (請先閱讀背面之注意事項再填寫本頁) •線· 的許多限制。一典型之非均勻記憶體存取(NUMA)電腦系 統包括一些互連之節點,各節點包括一或更多處理器以及 一區域“系統”記憶體。這類電腦系統之所以稱爲具有一 非均匀釔噫畿存1 QNUMA),係因爲比較其i、域節、點之系 統記憶體中所儲存的資料與一遠端節點之系統記憶體中所 儲存的資料,各處理器對於前者之存取潛在期較低。取決 於不同節點的快取装意體間是否維護資料相闕性,非均勻 記憶體存取(NUMA)系統可進一步分類成非相關氣者择取 章、己憶體相關。快取記憶體相關之非均勻記憶體存取(CC-ΝϋΜΑ)糸統其複雜度多半屬於硬體用以維護資料相關性 所需的額外通訊,該額外通訊不僅在於各節點内其各種位 準的快取記憶體與系統記憶體之間,而且在於不同節點的 快取記憶體與系統記憶體之間。然而,由於一非均句記惊 體存取(NUMA )電腦系統内之各節點可當作一較小的對稱 多重處理器(SMP )系統加以實行,所以非均句記憶體存取 (NUMA)黾細系統確實針對傳統對稱多重處理器(sMp )電 腦系統之尺寸限制。因此,各節點内之共用組成可僅藉由 一些處理器而作最佳化使用,然而由於整個系統維護相對 較低之潛在期,可從較大比例平行效應中弈兴。 對於快取記憶體相關之非均勻記憶體存取(cc_numa) 電腦系統,其一主要的效能考量爲有關透過互連而傳送之 通訊異動的潛在期,其中該互連耦合各節點。尤其,對於 最最普遍之異動類型的讀取異動,當資料目標爲駐遠 端系統記憶體與資料目標爲駐留於區域系統記憶體相比輕 -6- A7 B7 五 、發明說明( 4 時’前者可能具有兩倍之潛在期。因爲傳送於節點 與區域互連上之讀取显動鈿 ^ _ 、 助相比較,有關則者的潛在期相對 又问,所以減少即點互連上所傳送之讀取異動數目,因 降低這類遠端讀取異動之潛在期係非常有用而且値得期 待。 r 經濟部智慧財產局員工消費合作社印製 根據本發明 之讀取需求的 非均句記憶體 與第二處理節 第一與第二處 層組織。第二 憶體。如果第 記憶體位址線 對於該快取記 記憶體階層組 三處理器,並 位址線的一副 從該副本起源 以下詳述中 明確。 發明概述 ’ 非均句兒憶體存取(NUMA )電腦 數目及潛名勘係藉由支援共用介入而 存取(NUMA)電腦系統包括耦合一起 點第一處理節點包括一系統記憶體 理器,各具有各別相關聯的一快取記 處理節點包括至少一第三處理器與一 一處理器之快取記憶體階層組織保留 的一未修正副本,並且接收來自第三 憶f豆位址線的一需求,則第一處理器 織起源所要求之快取記憶體位址線, 且以一最新之相關性狀態保存該快取 本,而第一處理器之快取記憶體階層 茲快取記憶體位址線,以響應後續的 ,本發明的所有目標,特性,及優點 系統中 降_低。 之第一 ,以及 憶體階 系統記 快取 處理器 之快取 送至第 記憶體 組織可 需求。 將變得 圖示簡述 相信必定爲#斤奇特性之本發明特徵將陳述於所附的申請 專利範圍中。然而,當配合閲讀隨伴圖示時,本發明本 (請先閱讀背面之注意事項再填寫本頁) -7 533353 A7 B7 五、發明說明( 身’及其使用,進一步之目標與優點的較佳模式將藉由參 考以下一説明之具體實施例的詳述而得以完整了解,其中· 圖1敘述根據本發明之非均勻記憶體存取(NUMA)電腦 系統的一説明之具體實施例; 圖2係圖1中所示之節點控制器的一更詳細之區塊圖; 以及 圖3 A及圖3 B分別敘述一非均勻記憶體存取(NUMA )電 腦系統中的一示範之處理假設狀況,其中所接而收來自— 遠端處理節點的一讀取需求中所要求的一快取記憶體位址 線係藉由共用介么而知:—具的地虛揮節點起j。 説明之具體實施例詳述 系統概觀 現在參照圖示,而尤其參照圖丨,其中敘述根據本發明 的一非均勻記憶體存取(NUMA)電腦系統其一説明之具體 實施例。所説明之具體實施例可視爲例如一工作站,伺服 叩,或者大型電腦。如所説明,非均勻記憶體存取 (NUMA)電腦系統6包括一些(N^ 2)處理節點Sa _ ,藉 由節點互連2 2而互連。處理節點8a _ 8n可能各包括M個(M $ 〇 )處理器1 0,一區域互連i 6,以及一系統記憶體j 8, 透過记丨思體控制裔1 7而存取。較佳者(但非必要),處 理备10a - l〇m爲一樣,並且可包含p〇werPCTM線處理器中 的一處理詻’茲處理器係取自紐約Arm〇nk之國際商業機 洛(IBM)公司。除了用以執行程式指令之暫存器,指令流 邏輯以及執行單元外,通常如所指定之處理器核心丨2, -8- Γ%先閱讀背面之>i意事項再填寫本頁> 訂---------線丨丨 經濟部智慧財產局員工消費合作社印製 本紙張尺度適用中國國家標準(CNS)A4規格(21〇 297公釐) 533353 A7 B7____ 五、發明說明(6 ) 各處理器10a - 10m同時包括一晶片上之快取記憶體階層組 織’用以將來自系統記憶體i 8之資料分級送至相關聯的 處理器核心1 2。各快取記憶體階層組織1 4包括快取記憶 體的至少一位準,而可能包括例如一第一位準(L i )快取 ?己憶體以及一第二位準(L 2 )快取記憶體,分別具有8_32 仟位元組間,以及1 -16百萬位元組間之儲存容量。傳统 上,這類快取記憶體係藉由一快取記憶體控制器加以管 理,於其他項目中,該快取記憶體控制器實行一選定之快 取記憶體位址線取代方案,以及一相關性協定。本揭露 中’各處理器1 〇及其相關聯之快取記憶體階層組織14视 爲一單一監控器。 各處理節點8a _ 8n進一步包括耦合於區域互連i 6與節點 互連2 2間的一各別之節點控制器2 〇。各節點控制器2 〇藉 由執行至少兩功能而作爲遠端處理節點8的一區域媒介。 首先,各節點控制器2 0監控相關聯之區域互連J 6,便於 將區域通訊異動(例如讀取需求)傳送至遠端處理節點8。 其次,各節點控制器2 0監控節點互連2 2上之通訊異動, 並且主控相關聯之區域互連i 6上相關聯的通訊異動。相 關聯之區域互連1 6上的通訊係由一判別器2 4控制。如以 下進一步之討論,判別器24根據處理器1Q所產生之匯流 排需求k號而調節對區域互連1 6的存取,並且编譯區域 互連1 6上對監控之通訊異動的相關性響應。 區域互連1 6係透過中介匯流排橋接器2 6而耦合至一中 介匯流排3 0,該中介匯流排例如可實行作爲一週邊組成 -9 - 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公t ) (請先閱讀背面之注音?事項再填寫本頁} .身--------訂---------g丨一 經濟部智慧財產局員工消費合作社印製 —1一 533353 A7
=連(PCI)、區域匯流排。中介匯流排橋接器26提供一抵潛 在—期路捏以及一高頻會饮^ 、 土透過低潛在期路徑,處理器 (請先閱讀背面之注意事項再填寫本頁) 10可直接:存取輸入/輸出(1/〇)裝置32與儲存裝置34間之 置,而㈣存裝置3 4係映成至匯流排記憶體以及/或者 幸引入/‘出(I/O)位址$間;透過高韻—寬路徑、輸入/輸出 巧/〇)裝置32與儲存裝置34可存取系統記憶體18。輸幻 知出(I/O )裝置3 2可包括例如一顯示裝置,—键盤,一圖 形指標,以及用以連接至外部網路或者外接裝置之串列輿 平行埠。另一方面,儲存裝置34可包括光碟或者磁碟, 提供作業系統與應用軟體之非揮發儲存體。 記憶體組織 經濟部智慧財產局員工消費合作社印製 非均勻記/意體存取(NUMA)電腦系統6中之所有處理器 1〇共用一單一實體之記憶體空間,表示:各實體位址僅相 關於系統1己憶體1 8之_的一單一位置。因此,系統記憶 體之整個内容可視爲於系統記憶體18間已分割,通常^ 系統记憶體可由非均勻記憶體存取(NUM句電腦系統6中 之任何處理斋1 0加以存取。例如,於本發明的一説明之 具體實施例中,其中具有四個處理節點8,非均勻記憶體 存取(NUMA)電腦系統可具有一丨6個十億位元組(GB)之 實體位址空間,包括一多用途記憶體區域以及一保留區域 兩者。該多用途記憶體區域係分割成5 〇 〇個百萬位元組 (MB)區段,四個處理節點8每隔四個區段分別分配一次。 保留區域大約包含2個十億位元組(GB),包括系統控制與 週邊記憶體,以及輸入/輸出(1/〇)區域,各別分配予處理 10- 本紙張尺度過用中國國豕標準(CNS)A4規格(210 X 297公釐) 533353
五、發明說明(8 ) 節點8之一。 爲了本討論之目的,若處理節點8之系統記憶體1 8中儲 存一特定資料,則稱爲該資料之主屬節點;相反地,其他 處理節點8a - 8n對於該特定資料則稱爲遠端節點。 記憶體相關性 因爲儲存於各系統記憶體1 8内之資料可由非均勻記憶 體存取(NUMA)電腦系統6内之任何處理器i 0加以要求, 存取以及修正,所以非均勻記憶體存取(NUMA)電腦系統 6實行一快取記憶體相關協定,於相同處理節點中的快取 此憶體之間’以及不同處理節點中的快取記憶體之間維護 其相關。因此,非均勻記憶體存取(NUMA)電腦系統6適 合分類爲一快取記憶體相關之非均勻記憶體存取(CC-NUMA)電腦系統。所實行之特定的快取記憶體相關協定 係實行相依,但如以上所參照之共同申請案巾妨祥細詩 論,本發明的一較佳具體實施例中包含各種著名之修止, f他,共I,無效(MESI)協定,其尚且包括一第五之 R (最新)狀態。以下將假設快取記憶體階層組織1 4以及判 別器2 4實行傳統之R-MESI協定,其中節點控制器2 〇辨識 修正(M),共用(S)以及無效(I)狀態,而考慮將排他(e) 狀態併入修正(Μ)狀態,將最新(R)狀態併入共用(S )狀 態。亦即,無論資料是否眞正修正,節點控制器2 0假設 由一遠端快取記憶體排他而保留之資料已修正,並且不區 別遠端保留之資料的共用(S)與最新(R)狀態。 -11 - 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) ---訂---------丨· 經濟部智慧財產局負工消費合作社印製 封 位 過 資 有
-mmmi n n n n n n n n n (請先閱讀背面之注意事項再填寫本頁) 533353 五、發明說明(9 互連架構 加各區域互連1 6以及節點互連22可以任何匯流排式廣播 木構人換式廣播架構,或者交換式非廣播架構加以實 ^亍;、、:而、車又佳具體貫施例中,至少節點互連2 2係當 乍人換式非廣播互連而貫行,該交換式非廣播互連係以 IB=公司所開發之6χχ通訊協定加以管理。區域互連1 $以 及節點互連22准許分離之異動,表示:包含一通訊異動之 位址與資料持有間無固定的時間關係存在,而且該資料封 包^排序可與相關聯之位址封包不相同。區域互連^ 6以 及節點互連22之利用同時藉由管線之通訊異動而大大加 強、,該管線之通訊異動准許一後續之通訊異動於前一主控 (通訊異動前起源,其中該前一通訊異動接收來自各接受 者之相關性響應。 Q 又 不管所實行之互連架構的類型,至少三類型之“ 包”(通常此處所使用之封包指資訊的一分離單元)一 址,貝料,以及相關性響應—係用以於處理節點8間透 節點互連2 2,以及於監控器間透過區域互連丄6而輪= 訊。現在參照表〗以及Η,其中給定位址及資料封包= 關的搁位和定義之彙總。 -12- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) --------^---------線 — 111. 533353 A7 B7 五、發明說明(1(3 ) 經濟部智慧財產局員工消費合作社印製 主τ 欄位名稱 描述 位址 <0:7> 修正器,定義相關性,窝入,及保護的一通訊異動之屬性 位址 <8:15> 標記,用以識別一通訊異内之所有封包 位址 <16:63〉 位址部分,指示一需求中之實體, 虛擬或者輸入/輸出(I/O)位址 A同位位元 <0:2> 指示位址位元之同位位元<〇:63> T描述器 指示通訊異動之大小及類型 表II 欄位名稱 —.— __ 用以讀取及寫入異動之資料 資料 <0:127〉 資料同位位元 指示資料線之同位位元<〇: 127> <0:15> D標記 ----- ---— 標兒’用以將一資料封包以及一位址封包相配合 <0:7> D有效 指不資料以及D檩記攔位巾是否出現有效資訊 <0:!> — 如衣1以及u甲所知示,准許—接受者節點或者監控器 決定各封包所屬之通訊異動,一通訊異動中之各封包係以 一異動標記加以識別。熟知此項技藝人士將明白:額外之 流控制邏輯以及相關聯之流控制信號可用以調節有限通訊 -13- (請先閱讀背面之注意事項再填寫本頁) 訂---------線--- 長尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 533353 A7
資源的利用。 各處理節點8内,狀熊 心及相關性餐應於各監# $ u π 區域判別器24之間進行通訊。區域互連16内用 及相關性之通訊的信號線係彙總於以下表m中。 表iq 描述 信號名稱 伽0ut编碼之信號, <0:!> 指示流控制ii^付⑶$ <0:!> AStatln <0:!> ARespOut <0:2> 編碼之信號,: 二各匯流排接收器宣告,用,難 (請先閱讀背面之注意事項再填寫本頁) •參 ARespIn <0:2> . 經濟部智慧財產局員工消費合作社印製 較佳者,透過區域互連77T ARespTXr^nr^T^ 狀態和相關性響應與相關聯之位址封包且有—固而傳运的 程式化的時間關係。例如,AStat〇ut表決俊: 監控器是否成功地接收區域互連16上所傳^ 包,而該ASUtOut表決値可能爲接收位址封包後的第二 週期所需。判別斋2 4編譯AStat〇ut表決値,狹後於—固 定但可程式化之數週期(例如:1週期)後發稀Astatin表決 値。可能的AStat表決値彙總於以下表j v中。 •線- -14- 533353 A7 B7
表IV
五、發明說明(12 零値__ 間置 _ Ack__ 由監控器所接受之異動 錯誤 異動中所偵測之同位位元錯誤 重試 重試異動,通常由於流控制 AStatlri時期之後,然後將於一固定但可程式 (例如· 2週期)後要求ARespOut表決値。判別器2 4 ~ 、、 、 问樣 編譯各監控器之ARespOut表決値,且較佳者,於 —、 … . 、r —~ 期期間遞送一 ARespIn表決値。較佳者,可能之a尺e 決値包括列於表V中的相關性響應。 ________.# .! (請先閱讀背面之注音?事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 相關性響應 意義 重試 需求來源必須重試異動-通常由於流 修正介入 位址線於快取記憶體中修正,並將^· 而送至要求者 ' 共用介入 位址線於快取記憶體中未修正(而可能共用),並^^ 快取記憶體起源而送至要求者 共用 位址線於快取記憶體中保留且共用 零値 位址線於快取記憶體中無效 重新執行 所監控之需求具有長潛在期,而且將指示需求來源於 稍後時間重新發佈異動 1 —--- - 一*1 通 指TF ··所監控之需求具有長潛在期(例如:該需求將由一遠 端處理節點8的一處理器1 0或者系統記憶體1 8服務), -15 · •線. 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 533353 A7
五、發明說明(13 ) 而且知扣泫需求來源於稍後時間重新發佈該異動。因 此’對照重試AResp表決值,一重新執行令一表決爲重新 執行之異動其接受者(而非該異動之起源者)負貴於稍後時 間引發重新發佈該通訊異動。 jg點控制器 現在參照圖2,其中説明圖1之非均勻記憶體存取 (NUMA)電腦系統6中一節點控制器2 〇的一更詳細之區塊 圖。如圖2中所示,耦合於一區域互連16與節點互連22間 <各節點控制器2 0包括一異動接收單元(TRU) 4〇,一異動 傳送單元(TSU) 42,一資料接收單元(DRU)料,以及一資 ,傳送單元(DSU)46。異動接收單元(TRU)4〇,異動傳送 單兀(TSU) 42 ’資料接收單元(DRU) 44,以及資料傳送單 π (DSU) 46可例如以欄位可程式化閘陣列(FpGA)或者應 用導向積體電路(ASIC)而實行。如所指示,穿過節點控 制器20之位址以及資料路徑相分叉,其中位址(以及相關 性)封包係由異動接收單元(TRU) 4〇以及異動傳送單元 (TSU)42處理,而資料封包係由資料接收單元(dru)44# 及Λ料傳送單元(DSU) 46處理。 經 濟 部 智 慧 財 產 局 員 工 消 費 合 作 社 印 製 兴動接收單兀(TRU) 40係受指定用以指示離開節點互連 2 2 t異動流,負責接受來自節點互連2 2之位址以及相關 性封包,於區域互連16上發佈異動,並將響應轉寄至異 動傳送單το (TSU) 42。異動接收單元(TRU) 4〇包括響應多 工器(mux) 52,用以接收來自節點互連2 2之封包,並將所 選定封包傳至異動傳送單元(TSU) 42内之匯流排主控5 4以 -16- 五、發明說明( 及相關性響應邏輯 受一位址封勺輯56兩者。為了響應從響應多工器52接 -通訊匯流排主控54可於其區域互連“上起始 所浐亍的 '甬、叾類型係相同或者不同於由接收之位址封包 所扣不的通訊異動類型。 」已 點元:SU) 42如其命名所指示,爲異動流至節 00,用以暫每/迢,其中包括一多重登錄待決缓衝器 之通訊儲麵起源而送至節點互連221尚未完成 屬性。較佳者,儲存於待決緩衝器60其-:刑,、、、動屬性包括至少異動之位址(包括標記),異動 ’以及期望之相關性響應的數目。各待決缓衝器总錄 具有一相關聯之狀態,可設^成零値,用以指示可刪㈣ :決_登錄,或者重新執行,用以指示該異動仍爲待 決。了從節點互連22上所起源之位址封包外,豈動傳 3兀(彻)42與異動接收單元(tru)4q相互動,以處理 尤憶體需求異動,並將命令發佈至資料接收單元(DRU) 44 以及貝料傳送單元(DSU) 46,以控制區域互連1 6與節點互 連22間之資料傳送。異動傳送單元(TSU) 42同時以相關性 響應邏輯5 6實行節點互連22所選定之相關性協定(亦 即· MSI ),並且以目錄協定邏輯5 8維護相關目錄$ 〇。 相關目錄5 0儲存送出往遠端節點中之快取記憶體的資 料其系統記憶體位址(例如:快取記憶體位址線)之指示, 其中區域處理節點係主屬節點。各快取記憶體位址線其位 址指示係以一識別字與各遠端處理節點相連結而儲存,這 類遠端處理節點各具有快取記憶體位址線以及該快取記憶 -17- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) 533353 A7 B7 五、發明說明(15) 體位址線相關性狀態的一副本。相關性目錄5 0中之登錄 其可能的相關性狀態彙總於表VI中。
表VI 相關目錄狀態 區域快取記憶體 中之可能狀態 遠端快取記憶體 中之可能狀態 意義 修正 I Μ,Ε,或者 快取記憶體 位址線可能 共用 (S) R,S或者I R,S或者I 於遠端節點可能 非排他保留快取 記憶體位址線 無效 (I) R,Μ,E , S,或者I I 沒有任何遠端 節點保留快取 記憶體位址線 待決共用 R,S或者I R,S或者I 快取記憶體 位址線處於遠端 節點無效之處理中 待決修正 I Μ,Ε,或者I 快取記憶體 位址線處於遠端 節點無效之遠端 修正以及寫回 主屬節點系統 記憶體的處理中 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 如表VI中所指示,遠端處理節點所保留之快取記憶體位 址線其相關性狀態的知識並不明確。此種不明確係因爲事 實上:遠端保留的一快取記憶體位址線可無需修正主屬節 點之節點控制器2 0而進行來自R,S或E至I,或者來 -18- 用 適 度 尺 張 紙 本 國國家標準(CNS)A4規格(210 χ 297公釐) 533353 五、發明說明(16) 自E至Μ的一異動。 ^理讀取需求 C請先閱讀背面之注音?事項再填寫本頁} 爲了降低處理器讀取需求欠潘在期,本發明於非均勾記 憶體存取(NUMA)電腦系統6中,足援共用介入、,亦即,起 源資料而響應以未修正r亦即Ε或Μ)狀態保留資料的一快 取記憶體之讀取需灰。因爲非均勾記憶體存取(numa)電 腦系統6中之多重快取記憶體可同時間保留相同的未修正 快取記憶體位址線,所以需有某些機制用以調節從何快取 圮憶體藉由共用介入而使快取記憶體位址線起源。如以上 參照之共同待決申請案所述,該機制係於R(最新)快取記 憶體相關性狀悲。根據本發明,於任何時候,一特殊處理 節點8中僅有一快取記憶體階層組織丨4可以R狀態保留一 特殊之快取記憶體位址線;然而,多重處理節點8中:快 取記憶體階層組織1 4可同時間以r狀態同時間保留相同的 快取記憶體位址線。 表VII彙總一快取記憶體階層組織i 4之狀態異動,於一 讀取遺失之後,則在其區域互連i 6上發佈一讀取需求。 經濟部智慧財產局員工消費合作社印製 表VII 主控狀態異動 接收之ARespIn表決値 資料來源 WR 共用 系統1己憶體或者節點抑制紫 I — E 零値 系統記憶體或者節點柃制哭 I—R 共用介入 -~—-—-— Φ4 監控器 I—R 修正介入 監控器 如所指示,如果快取記憶體階層組織1 4接收一 ARespIn共 -19- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 533353 A7
五、發明說明(17 ) 用相關性表決値,則快取記憶體階層組織i 4之快取記憶 體控制器“得知,,相同處理節點8中沒有其他監控器以R狀 態或者Μ狀態保留所要求的快取記憶體位址線,而且所要 求之快取記憶體位址線將由區域系統記憶體丨8或者一遠 端系統記憶體1 8透過節點控制器2 〇供應。因此,當要求 I快取記憶體階層組織1 4透過區域互連! 6而接收所要求 的快取記憶體位址線時,快取記憶體階層組織丨4之快取 死憶體控制器將所要求的快取記憶體位址線加以高速緩衝 儲存,並且將其相關性狀態設定成最新,表示:該多重區 域快取記憶體階層組織1 4保留所要求之快取記憶體位址 線,而該要求之快取記憶體階層組織i 4負責藉由共用介 入而使所要求的快取記憶體位址線起源。 如果要求之快取記憶體階層組織丨4接收一 ARespIn零値 相關性表決値,以響應讀取需求,則該要求之快取記憶體 階層組織1 4之快取記憶體控制器“得知,,沒有區域快取記 憶體階層組織1 4儲存所要求之快取記憶體位址線的一副 本,而且所要求之快取記憶體位址線將由區域系統記憶體 1 8或者一遠端系統記憶體透過節點控制器2 〇而起源。當 要求之快取1己憶體階層組織1 4接收所要求之快取記憶體 位址線時,所要求之快取記憶體位址線係以排他狀態加以 向速緩衝儲存。 如果要求之快取記憶體階層組織1 4接收一 ARespIn共用 介入或者修正介入表決値,則要求之處理器1 〇的快取記 憶體控制器“得知,,所要求之快取記憶體位址線將由相同 -20- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) 訂: 線· 經濟部智慧財產局員工消費合作社印製 533353 A7 __B7_ 五、發明說明(18 ) 處理節點1 0中的另一監控器起源,並於接受所要求之快 取記憶體位址線時以R狀態加以儲存。 下表VIII中彙總一監控器之快取記憶體階層組織内用以 響應接受一讀取需求的狀態異動。很重要地,一讀取需求 對於一快取記憶體位址線之相關性狀態的影響取決於該讀 取需求係從一區域處理器1 0接收,或者透過區域節點控 制器2 0,從一遠端處理節點8中的一處理器1 0接收。可以 一些方式將關於讀取需求其來源之資訊輸送至監控處理器 1 0。例如,節點控制器2 0可將一“遠端需求”信號供應予 各處理器1 0之快取記憶體階層組織1 4,用以指示節點控 制器2 0何時於區域互連1 6上從一遠端處理節點8起源一讀 取需求。此一“遠端需求”信號可藉由節點控制器2 0插入 區域互連1 6上之讀取需求異動内的一定義攔位(例如:異 動類型),或者可透過將節點控制器2 0連接至各處理器10 的一分離之信號線而傳送。 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 表 VIII 監控器狀態或者狀態 異動 監控器ArespOut表決値 讀取需求來源 I 零値 區域處理器或者節點控制器 E— S 共用介入 區域處理器 M-> S 修正介入 區域處理器 S 共用 區域處理器或者節點控制器 R-> S 共用介入 區域處理器 E—R 共用介入 節點控制器 M-^R 修正介入 節點控制器 R 共用介入 節點控制器 -21 - 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 533353 A7 B7 ---—------ 五、發明說明(19) 如表VIII中所示,如果一快取記憶體階層組織i 4監控— 區域處理器1 0所發佈的一讀取需求(亦即:未宣告‘‘遠端需 求’’仏號),並且以排他狀態或者最新狀態保留所要求之快 取記憶體位址線,則監控之快取記憶體階層組織1 4提供 一共用介入ARespOut表決値,而從區域互連i 6上起源所 要求之快取記憶體位址線,以響應接受來自判別器24的 一共用介入ARespIn表決値,並且將所要求之快取記憶體 位址線其副本的相關性狀態更新成共用狀態。類似地,如 果一快取記憶體階層組織1 4監控由一區域處理器1 〇所發 佈的一讀取需求,並以修正狀態保留所要求之快取記憶體 位址線,則監控之快取記憶體階層組織1 4提供一修正介 入ARespOut表決値,從區域互連! 6上起源所要求之快取 記憶體位址線,以響應接受一修正介入ArespIn表決値, 並且將所要求之快取記憶體位址線其副本的相關性狀態更 新成共用狀態。另一方面,如果一監控之快取記憶體階層 組織1 4以共用或者無效狀態保留由一區域或者遠端處理 器1 〇所要求的一快取記憶體位址線,則監控之快取記憶 體階層組織1 4供應適當之ARespOut表決値(亦即:分別爲 共用或者零値)’而非原始資料。 當一快取記憶體位址線之主屬或者遠端節點的一監控之 快取記憶體階層組織1 4接收來自一遠端處理節點8,透過 區域節點控制器2 0,對快取記憶體位址線的一讀取需求 時’則發生表VIII中所示之其餘三個情況。如以上所註 明’這類填取需求係藉由一 “遠端需求”信號加以識別。 -22- 尺度中關家標準(CNS)A4規格⑵Q x 297公爱)— ------ (請先閱讀背面之注咅?事項再填寫本頁) 訂· 經濟部智慧財產局員工消費合作社印製 533353 A7 B7___ 五、發明說明(2()) (請先閱讀背面之注意事項再填寫本頁) 爲了響應接受此一項取需求’監控之快取記憶體階層組織 1 4供應適當的ARespOut表決値,亦即,如果所要求之快 取記憶體位址線係以排他或者最新狀態保留,則爲共用介 入,而如果所要求之快取記憶體位址線係以修正狀態保 留,則爲修正介入。然後,爲了響應接受一 Arespln共用 介入信號(如果給定一 ARespOut共用介入表決値)或者 Arespln修正介入信號(如果給定一 ARespOut修正介入表決 値),監控之快取記憶體階層組織1 4從區域互連1 6起源所 要求的快取記憶體位址線。此外,如果爲排他或者修正狀 態,則將監控之快取記憶體階層組織1 4其所要求的快取 記憶體位址線之相關性狀態更新成最新狀態,而如果已設 定成最新狀態,則仍然不改變。於區域互連1 6上由監控 之快取記憶體階層組織1 4起源之快取記憶體位址線係藉 由區域控制器2 0接收,其將快取記憶體位址線透過節點 互連2 2,而傳送至要求處理節點8的節點控制器。 對於表VII與VIII中未顯示之該等狀態及作業,相關性 狀態異動以及相關性響應係根據先前技藝MESI協定而執 行,其中最新狀態視同共用狀態。 經濟部智慧財產局員工消費合作社印製 現在參照圖3 A以及3 B,説明非均勻記憶體存取(NUMA) 電腦系統6中的一示範之處理假設情況,其中所接收而來 自一遠端處理節點8的一讀取需求中所要求的一快取記憶 體位址線係藉由共用介入於一目的地處理節點8起源。爲 了清楚,所説明係非均勻記憶體存取(NUMA)電腦系統6 的一簡化之具體實施例,其中包括兩處理節點8 a以及 -23- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) "" 533353 經濟部智慧財產局員工消費合作社印製 A7 B7_ 五、發明說明(21 ) 8b ’各包括兩處理器i〇a以及。 如圖3 A中所示,首先,處理節點8 b之處理器1 〇 b要求 來自其快取記憶體階層組織1 4的一快取記憶體位址線, 该快取圮憶體階層组織1 4係以處理節點8 a作爲主屬節 點。爲了響應快取記憶體階層組織1 4中所遺失之需求, 處理器1 0 b從其區域互連丨6起源對快取記憶體位址線的一 1買取需求。處理器1 〇 a監控該讀取需求,並以一零値之 ARespOut表決値予以響應,指示:處理器1〇a之快取記憶 體階層組織1 4並未儲存所要求之快取記憶體位址線的一 副本,而且節點控制器20表決AResp〇ut爲重新執行。爲 了響應判別器(未説明)所編譯tAResp〇ut表決,以及所 表決之ARespIn爲重新執行,節點控制器2 〇透過節點互連 2 2 ’將碩取需求轉寄至主屬節點,亦即處理節點8 。 爲了響應接受所轉寄之讀取需求,處理節點8 &之節點控 制器2 0將讀取需求伴隨一 “遠端需求,,信號轉寄至處理節 點8a之區域互連16。因爲處理器1〇b之快取記憶體階層 組織1 4以最新狀態儲存所要求之快取記憶體位址線的一 副本,所以處理器1 0 b提供一 ARespOut共用介入表決値。 接著如圖3B中所示,處理器10b藉由共用介入起源所要 求之快取記憶體位址線,而送至區域互連1 6,以響應接 受來自判別器的一 ARespIn共用介入表決値。然而,因爲 節點控制器2 0通知處理器丨〇 b讀取需求係轉寄自處理節點 8b的一“遠端需求’’,所以處理器10b之快取記憶體階層 組織1 4以最新狀態保留所要求的快取記憶體位址線。 -24- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) --------------- (請先閱讀背面之注意事項再填寫本頁) . -·線· 533353 經濟部智慧財產局員工消費合作社印製 ---------------- (請先閱讀背面之注意事項再填寫本頁) 訂· --線- A7 B7 五、發明說明(a) 包含所要求之快取記憶體位址線的資料異動係藉由處理 節點8 a之節點控制器2 〇接收,並透過節點互連2 2轉寄至 處理節點8b之節點控制器20。處理節點以之相關性目錄 5 〇記錄:快取記憶體位址線已藉由將快取記憶體位址線之 相關性狀悲更新成不明確之共用狀態,而非排他地‘‘送 出’’至處理節點8 b。然後,所要求之快取記憶體位址線係 藉由處理節點8 b之節點控制器2 0供應至處理器丨〇 b,其 以最新狀態儲存所要求之快取記憶體位址線。以此方式, 接著各處理節點8 a以及8 b之處理器丨〇 b可服務對於該快 取記憶體位址線的區域及遠端需求。 如所述,本發明提供一種非均勻記憶體存取(num句電 腦系統,利於藉由支援資料之共用介入而減少内部節點讀 取需求的數目_,以足—隆i讀取t求之^潛在期。根據本發 明,各處理節點可具有一監控器(例如:快取記憶體階層組 '、我)以非排他之取新狀態保留相同的快取記憶體位址 線,該監控器從該非排他之最新狀態起源該快取記憶體位 址線。爲了防止監控器將以最新,排他,或者修正狀態保 留的一快取記憶體位址線之相關性狀態更正成共用狀態, 以響應一遠端處理器之讀取需求,則藉由一遠端需求信號 對各監控器通知這類需求。 雖然本發明特別藉由參照一較佳具體實施例而展示以及 描述,熟知此項技藝人士將了解:沒有偏離本發明之精神 以及範圍下’此處可進行形式以及細節的各種改變。 -25- 本紙張尺度顧巾關家規格(21G X 297公釐) " ---~一.

Claims (1)

  1. 533353 經濟部智慧財產局員工消費合作社印製 A8 B8 C8 D8 六、申請專利範圍 1. 一種電腦系統,包含: 第一及第二處理節點,其係耦合一起,其中該第一 處理節點包括一系統記憶體以及第一與第二處理器,各 具有一分別相關之快取記憶體階層組織,且其中該第二 處理節點包括至少一第三處理器與一系統記憶體; 其中如果該第一處理器之快取記憶體階層組織保留 一快取記憶體位址線的一未修正副本,並接收來自該第 三處理器對於該快取記憶體位址線的一需求,則該第一 處理器之快取記憶體階層組織起源該快取記憶體位址 線,而送至該第三處理器,並以一最新相關性狀態保存 該快取記憶體位址線的副本,用以供該第一處理器之該 快取記憶體階層組織起源該快取記憶體位址線。 2. 如申請專利範圍第1項之電腦系統,其中如果該第一處 理器之該快取記憶體階層組織保留一快取記憶體位址線 的一修正副本,並接收來自該第三處理器之該快取記憶 體位址線的一需求,則該第一處理器之該快取記憶體階 層组織起源該快取記憶體位址線,而送至該第三處理 器,並以該最新相關性狀態保存該快取記憶體位址線的 該副本。 3. 如申請專利範圍第1項之電腦系統,其中: 該第一及第二處理節點係藉由一節點互連而搞合; 以及 該第一處理節點包括一節點控制器,介於該節點互 連與該第一處理器之間,其中該節點控制器將該需求伴 -26- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 言 (請先閱讀背面之注意事項再填寫本頁)
    533353 A8 B8 C8 D8 t、申請專利範圍 隨一指示轉寄至該第一處理器,該指示表示:該需求係 來自另一處理節點。 4. 如申請專利範圍第1項之電腦系統,其中於接受該需求 前,該第一處理器之該快取記憶體階層組織係相關於該 快取記憶體位址線之該未修正副本,而該副本具有排他 與最新之一的一相關性狀態。 5. 如申請專利範圍第1項之電腦系統,該第二處理節點包 括相關於該第三處理器的一快取記憶體階層組織,其中 該快取記憶體階層組織以該最新狀態儲存該快取記憶體 位址線的一副本,以響應接受由該第一處理器之該快取 記憶體階層組織所起源的該快取記憶體位址線,使得該 第一處理器之該快取記憶體階層組織與該第三處理器之 該快取記憶體階層組織兩者同時間以該最新狀態保留該 快取記憶體位址線的一副本。 6. 如申請專利範圍第1項之電腦系統,其中該需求係一讀 取需求。 7. —種於一電腦系統中通訊之方法,該電腦系統包括搞合 一起之第一及第二處理節點,其中該第一處理節點包括 一系統記憶體以及第一與第二處理器,各具有一分別相 關之快取記憶體階層組織,且其中該第二處理節點包括 至少一第三處理器與一系統記憶體,該方法包含: 於該第一處理器之該快取記憶體階層組織,接收來 自該第三處理器對於一快取記憶體位址線的一需求,其 中該第一處理器之該快取記憶體階層組織保留一副本; -27- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) · -·線. 經濟部智慧財產局員工消費合作社印製 533353 A8 B8 C8 D8 六、申請專利範圍 經濟部智慧財產局員工消費合作社印製 如果該要求之快取記憶體位址線的一未修正副本保 留於該第一處理器之該快取記憶體階層組織,則該第— 處理器之該快取記憶體階層組織起源該快取記憶體位址 線,而送至該第三處理器,並以一最新相關性狀態將該 快取Ζ ί思體位址線的該副本保存於該第一處理器之該快 取記憶體階層組織,而該第一處理器之該快取記憶體階 層組織從該副本起源該快取記憶體位址線。 8. 如申請專利範圍第7項之方法,並且進一步包含: 如果該要求之快取記憶體位址線的一修正副本保 於泫第處理器之該快取?己憶體階層組織,則該第一 理器心孩快取記憶體階層組織起源該快取記憶體位 線,而送至該第三處理器,並以一最新相關性狀態將W 快取記憶體位址線的該副本保存於該第處理器之該快取 記憶體階層組織,而該第一處理器之該快取記憶體階層 組織從該副本可起源該快取記憶體位址線。 9. 如申請專利範圍第7項之方法,其中該第一及第二處 節點係藉由一節點互連而耦合,以及 该第一處理節點包括一節點控制器,介於該節點 連與該第一處理器之間,該方法進L步包含: 於孩節點控制器接收該需求,並將該需求從該 點控制器伴隨一指示轉寄至該第一處理器,該指 表示:#亥需求係來自另一處理節點。 10. 如申請專利範圍第7項之方法,並且進一步包含: 於接文该需求前,結合該快取記憶體位址線之該 留處 址該 理 互 節 示 (請先閱讀背面之注意事項再填寫本頁) »衣 訂 -丨線· 28- 533353 A8 B8 C8 D8六、申請專利範圍 修正副本以及該第一處理器其該快取記憶體階層組織中 的一相關性狀態,該相關性狀態係排他與最新之一。 11. 如申請專利範圍第7項之方法,該第二處理節點包括相 關於該第三處理器的一快取記憶體階層组織,該方法進 一步包含: 於該第三處理器之該快取記憶體階層組織,以該最 新狀態儲存該快取記憶體位址線的一副本,以響應接受 由該第一處理器之該快取記憶體階層組織所起源的該快 取記憶體位址線,使得該第一處理器之該快取記憶體階 層組織與該第三處理器之該快取記憶體階層組織兩者同 時間以該最新狀態保留該快取記憶體位址線的一副本。 12. 如申請專利範圍第7項之方法,其中接收該需求包含接 收一讀取需求。 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 -29- 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐)
TW088121887A 1998-12-17 1999-12-14 Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention TW533353B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/213,997 US6108764A (en) 1998-12-17 1998-12-17 Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention

Publications (1)

Publication Number Publication Date
TW533353B true TW533353B (en) 2003-05-21

Family

ID=22797377

Family Applications (1)

Application Number Title Priority Date Filing Date
TW088121887A TW533353B (en) 1998-12-17 1999-12-14 Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention

Country Status (6)

Country Link
US (1) US6108764A (zh)
JP (1) JP3661761B2 (zh)
KR (1) KR100308323B1 (zh)
CN (1) CN1244055C (zh)
CA (1) CA2291401C (zh)
TW (1) TW533353B (zh)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6546429B1 (en) * 1998-09-21 2003-04-08 International Business Machines Corporation Non-uniform memory access (NUMA) data processing system that holds and reissues requests at a target processing node in response to a retry
US6266743B1 (en) * 1999-02-26 2001-07-24 International Business Machines Corporation Method and system for providing an eviction protocol within a non-uniform memory access system
US6421775B1 (en) * 1999-06-17 2002-07-16 International Business Machines Corporation Interconnected processing nodes configurable as at least one non-uniform memory access (NUMA) data processing system
US6591348B1 (en) * 1999-09-09 2003-07-08 International Business Machines Corporation Method and system for resolution of transaction collisions to achieve global coherence in a distributed symmetric multiprocessor system
US6591341B1 (en) * 2000-03-31 2003-07-08 Intel Corporation Multilevel cache system and method having a merged tag array to store tags for multiple data arrays
US7234029B2 (en) * 2000-12-28 2007-06-19 Intel Corporation Method and apparatus for reducing memory latency in a cache coherent multi-node architecture
US20020087765A1 (en) * 2000-12-29 2002-07-04 Akhilesh Kumar Method and system for completing purge requests or the like in a multi-node multiprocessor system
KR100413686B1 (ko) * 2001-07-14 2003-12-31 삼성전자주식회사 모니터의 절전 장치 및 그 제어 방법
US7620954B2 (en) * 2001-08-08 2009-11-17 Hewlett-Packard Development Company, L.P. Mechanism for handling load lock/store conditional primitives in directory-based distributed shared memory multiprocessors
US7302505B2 (en) * 2001-12-24 2007-11-27 Broadcom Corporation Receiver multi-protocol interface and applications thereof
US6922783B2 (en) * 2002-01-16 2005-07-26 Hewlett-Packard Development Company, L.P. Method and apparatus for conserving power on a multiprocessor integrated circuit
US6993631B2 (en) * 2002-05-15 2006-01-31 Broadcom Corporation L2 cache maintaining local ownership of remote coherency blocks
US7003631B2 (en) * 2002-05-15 2006-02-21 Broadcom Corporation System having address-based intranode coherency and data-based internode coherency
US7155572B2 (en) * 2003-01-27 2006-12-26 Advanced Micro Devices, Inc. Method and apparatus for injecting write data into a cache
US8578130B2 (en) * 2003-03-10 2013-11-05 International Business Machines Corporation Partitioning of node into more than one partition
US7334089B2 (en) * 2003-05-20 2008-02-19 Newisys, Inc. Methods and apparatus for providing cache state information
US7216205B2 (en) 2004-01-12 2007-05-08 Hewlett-Packard Development Company, L.P. Cache line ownership transfer in multi-processor computer systems
US7788452B2 (en) * 2004-01-20 2010-08-31 International Business Machines Corporation Method and apparatus for tracking cached addresses for maintaining cache coherency in a computer system having multiple caches
US7457922B2 (en) * 2004-11-20 2008-11-25 International Business Machines Corporation Cache line placement prediction for multiprocessor non-uniform cache architecture systems
US8010682B2 (en) * 2004-12-28 2011-08-30 International Business Machines Corporation Early coherency indication for return data in shared memory architecture
US7461209B2 (en) 2005-12-06 2008-12-02 International Business Machines Corporation Transient cache storage with discard function for disposable data
WO2007096979A1 (ja) 2006-02-24 2007-08-30 Fujitsu Limited 情報処理装置およびデータ転送方法
JP4335298B2 (ja) 2006-02-24 2009-09-30 富士通株式会社 スヌープ制御方法および情報処理装置
WO2007099583A1 (ja) 2006-02-28 2007-09-07 Fujitsu Limited システムコントローラおよびキャッシュ制御方法
US8606997B2 (en) * 2008-12-23 2013-12-10 Oracle America, Inc. Cache hierarchy with bounds on levels accessed
US8793436B2 (en) 2011-05-23 2014-07-29 International Business Machines Corporation Cache management of tracks in a first cache and a second cache for a storage
US8806122B2 (en) 2011-05-23 2014-08-12 International Business Machines Corporation Caching data in a storage system having multiple caches including non-volatile storage cache in a sequential access storage device
US8799578B2 (en) * 2011-05-23 2014-08-05 International Business Machines Corporation Managing unmodified tracks maintained in both a first cache and a second cache
CN102388373B (zh) * 2011-09-30 2013-03-20 华为技术有限公司 访问高速缓冲存储器的方法及非真实缓存代理
US8930619B2 (en) * 2012-05-29 2015-01-06 Dot Hill Systems Corporation Method and apparatus for efficiently destaging sequential I/O streams
US9053038B2 (en) 2013-03-05 2015-06-09 Dot Hill Systems Corporation Method and apparatus for efficient read cache operation
US9684455B2 (en) 2013-03-04 2017-06-20 Seagate Technology Llc Method and apparatus for sequential stream I/O processing
US9552297B2 (en) 2013-03-04 2017-01-24 Dot Hill Systems Corporation Method and apparatus for efficient cache read ahead
US9152563B2 (en) 2013-03-04 2015-10-06 Dot Hill Systems Corporation Method and apparatus for processing slow infrequent streams
US9158687B2 (en) 2013-03-04 2015-10-13 Dot Hill Systems Corporation Method and apparatus for processing fast asynchronous streams
US9086974B2 (en) * 2013-09-26 2015-07-21 International Business Machines Corporation Centralized management of high-contention cache lines in multi-processor computing environments
US9298626B2 (en) 2013-09-26 2016-03-29 Globalfoundries Inc. Managing high-conflict cache lines in transactional memory computing environments
US9329890B2 (en) 2013-09-26 2016-05-03 Globalfoundries Inc. Managing high-coherence-miss cache lines in multi-processor computing environments
US9292444B2 (en) 2013-09-26 2016-03-22 International Business Machines Corporation Multi-granular cache management in multi-processor computing environments
US9298623B2 (en) 2013-09-26 2016-03-29 Globalfoundries Inc. Identifying high-conflict cache lines in transactional memory computing environments
US9561469B2 (en) * 2014-03-24 2017-02-07 Johnson Matthey Public Limited Company Catalyst for treating exhaust gas
US10643700B2 (en) 2015-10-29 2020-05-05 Micron Technology, Inc. Apparatuses and methods for adjusting write parameters based on a write count
US10754777B2 (en) * 2015-11-04 2020-08-25 Samsung Electronics Co., Ltd. Systems and methods for implementing coherent memory in a multiprocessor system
US10642780B2 (en) 2016-03-07 2020-05-05 Mellanox Technologies, Ltd. Atomic access to object pool over RDMA transport network
US10552367B2 (en) 2017-07-26 2020-02-04 Mellanox Technologies, Ltd. Network data transactions using posted and non-posted operations
US10372638B2 (en) 2017-10-20 2019-08-06 Hewlett Packard Enterprise Development Lp Interconnect agent
US10713169B2 (en) 2018-01-17 2020-07-14 International Business Machines Corporation Remote node broadcast of requests in a multinode data processing system
US10387310B2 (en) 2018-01-17 2019-08-20 International Business Machines Corporation Remote node broadcast of requests in a multinode data processing system
US10579527B2 (en) 2018-01-17 2020-03-03 International Business Machines Corporation Remote node broadcast of requests in a multinode data processing system
US10613996B2 (en) * 2018-05-03 2020-04-07 Arm Limited Separating completion and data responses for higher read throughput and lower link utilization in a data processing network
US11068407B2 (en) 2018-10-26 2021-07-20 International Business Machines Corporation Synchronized access to data in shared memory by protecting the load target address of a load-reserve instruction
US10884740B2 (en) 2018-11-08 2021-01-05 International Business Machines Corporation Synchronized access to data in shared memory by resolving conflicting accesses by co-located hardware threads
US11119781B2 (en) 2018-12-11 2021-09-14 International Business Machines Corporation Synchronized access to data in shared memory by protecting the load target address of a fronting load
US11106608B1 (en) 2020-06-22 2021-08-31 International Business Machines Corporation Synchronizing access to shared memory by extending protection for a target address of a store-conditional request
US11693776B2 (en) 2021-06-18 2023-07-04 International Business Machines Corporation Variable protection window extension for a target address of a store-conditional request

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5673413A (en) * 1995-12-15 1997-09-30 International Business Machines Corporation Method and apparatus for coherency reporting in a multiprocessing system
US5893144A (en) * 1995-12-22 1999-04-06 Sun Microsystems, Inc. Hybrid NUMA COMA caching system and methods for selecting between the caching modes
US5878268A (en) * 1996-07-01 1999-03-02 Sun Microsystems, Inc. Multiprocessing system configured to store coherency state within multiple subnodes of a processing node
US5940856A (en) * 1997-04-14 1999-08-17 International Business Machines Corporation Cache intervention from only one of many cache lines sharing an unmodified value
US5943684A (en) * 1997-04-14 1999-08-24 International Business Machines Corporation Method and system of providing a cache-coherency protocol for maintaining cache coherency within a multiprocessor data-processing system
US5940864A (en) * 1997-04-14 1999-08-17 International Business Machines Corporation Shared memory-access priorization method for multiprocessors using caches and snoop responses
US5943685A (en) * 1997-04-14 1999-08-24 International Business Machines Corporation Method of shared intervention via a single data provider among shared caches for SMP bus
US5963974A (en) * 1997-04-14 1999-10-05 International Business Machines Corporation Cache intervention from a cache line exclusively holding an unmodified value

Also Published As

Publication number Publication date
CN1244055C (zh) 2006-03-01
CA2291401C (en) 2005-04-26
CN1264080A (zh) 2000-08-23
KR20000052493A (ko) 2000-08-25
JP3661761B2 (ja) 2005-06-22
US6108764A (en) 2000-08-22
KR100308323B1 (ko) 2001-11-14
JP2000227908A (ja) 2000-08-15
CA2291401A1 (en) 2000-06-17

Similar Documents

Publication Publication Date Title
TW533353B (en) Non-uniform memory access (NUMA) data processing system with multiple caches concurrently holding data in a recent state from which data can be sourced by shared intervention
TW446883B (en) Non-uniform memory access (NUMA) data processing system that speculatively forwards a read request to a remote processing node
US6115804A (en) Non-uniform memory access (NUMA) data processing system that permits multiple caches to concurrently hold data in a recent state from which data can be sourced by shared intervention
TW432291B (en) Non-uniform memory access (NUMA) data processing system that holds and reissues requests at a target processing node in response to a retry
TW452690B (en) Reservation management in a non-uniform memory access (NUMA) data processing system
TW385395B (en) Method of shared intervention for cache lines in the shared state for SMP bus
US6067603A (en) Non-uniform memory access (NUMA) data processing system that speculatively issues requests on a node interconnect
US6647453B1 (en) System and method for providing forward progress and avoiding starvation and livelock in a multiprocessor computer system
JP4928812B2 (ja) タグ付きキャッシュ状態に基づいて下位レベル・キャッシュへの参照なしに相互接続ファブリック上にリクエストを送出するためのデータ処理システム、キャッシュ・システム、および方法
US7680987B1 (en) Sub-page-granular cache coherency using shared virtual memory mechanism
JP5575870B2 (ja) 部分読出と非スヌープアクセスとの間のメモリ順序付け要件の充足
TW446877B (en) Non-uniform memory access (NUMA) data processing system that speculatively issues requests on a node interconnect
TWI393005B (zh) 用於在具有多重一致性定義域之資料處理系統中處置清空操作之資料處理系統、快取系統以及方法
JP3629511B2 (ja) 不均等メモリ・アクセス・システムにおいてトランザクションのキャンセルによるデータ損失を避けるための方法およびシステム
TW542958B (en) A method and apparatus for pipelining ordered input/output transactions to coherent memory in a distributed memory, cache coherent, multi-processor system
JP2008027435A (ja) 排他的所有権のスヌープフィルタ
US7568073B2 (en) Mechanisms and methods of cache coherence in network-based multiprocessor systems with ring-based snoop response collection
JPH10187645A (ja) プロセス・ノードの多数のサブノード内にコヒーレンス状態で格納するように構成されたマルチプロセス・システム
JP2000250884A (ja) 不均等メモリ・アクセス・コンピュータ・システムにおいてエヴィクション・プロトコルを提供するための方法およびシステム
TW498210B (en) Non-uniform memory access (NUMA) data processing system that decreases latency by expediting rerun requests
US11449489B2 (en) Split transaction coherency protocol in a data processing system
US7343454B2 (en) Methods to maintain triangle ordering of coherence messages
TW548547B (en) Method and system for maintaining cache coherency for write-through store operations in a multiprocessor system
US20090006712A1 (en) Data ordering in a multi-node system

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees