[發明專利]一種高速緩存同步的方法及裝置在審
| 申請號: | 201410360196.5 | 申請日: | 2014-07-25 |
| 公開(公告)號: | CN104239270A | 公開(公告)日: | 2014-12-24 |
| 發明(設計)人: | 陳繼承;倪璠;王洪偉 | 申請(專利權)人: | 浪潮(北京)電子信息產業有限公司 |
| 主分類號: | G06F15/16 | 分類號: | G06F15/16;G06F9/52;G06F12/08 |
| 代理公司: | 北京安信方達知識產權代理有限公司 11262 | 代理人: | 王丹;李丹 |
| 地址: | 100085 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 高速緩存 同步 方法 裝置 | ||
技術領域
本發明涉及計算機體系領域,特別是涉及一種高速緩存同步的方法及裝置。?
背景技術
由于制造工藝、能耗以及漏電限制,單處理器設計在本世紀初遭遇到了時鐘頻率墻(frequency?wall),通過提升處理器主頻來提升處理器性能變得越來越困難,代價越來越高。因此,處理器廠商提出了多核、多處理器來迎合高性能及嵌入式計算群體。?
多核、多處理器系統中的高速緩存一致性問題是困擾系統結構設計人員的主要問題。一方面,高速緩存內容的一致性直接關系著系統運行的正確性,使用“過時”的數據將導致計算機產生錯誤的運算結果,甚至導致系統崩潰。另一方面,數據的快速獲取與同步對于系統高效運行直觀重要。由于處理器主頻不斷提升,系統集成的處理器核數越來越大,多核、多處理器系統的計算性能急劇增強,但是存儲系統的性能卻未成比例增加,因此,數據訪問速度稱為制約系統性能的“瓶頸”,“低速”的存儲訪問極大的影響了系統的效率和吞吐量。高速緩存正是填補二者性能差異的有效手段,因此,保證高速緩存高效的工作是設計高性能計算機系統的重要內容。高速緩存一致性同步方法的高效實現是保證高速緩存正常工作的基礎,也是為處理器快速提供正確數據的關鍵。?
傳統的Cache(高速緩存)一致性同步方法主要包括源監聽(source?snooping)及宿主監聽(home?snooping)兩種。在源監聽方法中,當一個處理器核(稱為緩存代理(Caching?Agent,簡稱CA))需要訪問數據而該數據不在本地高速緩存中或處于沖突狀態時,需向系統中所有其它的CA廣播?監聽消息,其它CA收到該消息會檢查自己的本地高速緩存并據此做出應答。這種同步方法的優點在于消息傳遞延遲小,每次消息傳遞只需要經過兩跳即可返回結果。其缺點是拓展性差,當系統包含的處理器數目達到一定規模后,用于維護高速緩存一致性的廣播消息將使得總線擁塞不堪,系統性能急劇下降。為此,研究人員提出了另一種高速緩存一致性同步方式——home監聽方式。在基于home監聽方式的系統中,所有CA發送的請求被送往home代理(通常為存儲器),home代理適用一個“目錄”記錄Cache行的共享信息,并依據目錄的內容給相關的CA發送(請求數據或同步)消息,滿足要求的CA根據消息作出應答并提供數據。這種同步方式的優勢在于減少高速緩存同步消息的廣播,降低總線負載,拓展性較好,能夠適應大規模系統的需求。缺點是當系統規模較小時,效率不及source監聽方式,數據訪問需要經過三跳,延遲較大。?
發明內容
本發明要解決的技術問題是提供一種高速緩存同步的方法及裝置,以緩解單純使用source監聽帶來的消息風暴問題。?
為了解決上述技術問題,本發明提供了一種高速緩存同步的方法,應用于多處理器的計算機系統,包括:?
將所述多處理器的計算機系統中的處理器劃分為兩個或以上的分區,每個分區內包括兩個或以上的處理器,所述處理器包括一個或多個處理器核,每個分區內各指定一個處理器核為本分區的代表節點;?
在宿主代理節點處建立用于存儲高速緩存行的分區的位置及共享信息的目錄;?
當所述分區內的任一處理器核訪問指定高速緩存行發生缺失時,在本分區內采用源監聽進行同步,如通過源監聽未能實現同步,則由本分區的代表節點向所述宿主代理節點發送數據請求,由所述宿主代理節點采用宿主監聽進行同步。?
進一步地,上述方法還具有下面特點:所述由宿主代理節點采用宿主監?聽進行同步的過程中包括:?
所述宿主代理節點接收到數據請求后,查找所述目錄,如查找到存儲有所述指定高速緩存行數據的分區的位置,則根據該位置向該存儲有所述指定高速緩存行數據的分區的代表節點發送數據請求,由所述存儲有所述指定高速緩存行數據的分區的代表節點在其所在的分區內進行源監聽。?
進一步地,上述方法還具有下面特點:所述存儲有所述指定高速緩存行數據的分區的代表節點在其所在的分區內進行源監聽的過程中包括:?
存儲有所述指定高速緩存行數據的分區的代表節點在其所在的分區內廣播數據請求消息;?
該分區內的存儲有所述指定高速緩存行數據的處理器核接收到所述數據請求消息后發送數據應答消息,同時向所述宿主代理節點發送表示高速緩存行請求完成消息。?
進一步地,上述方法還具有下面特點:將所述多處理器的計算機系統中的處理器分為兩個以上的分區,包括:?
將位于同一套接口中的多個處理器劃入同一分區。?
進一步地,上述方法還具有下面特點:?
所述每個分區內的處理器核小于或等于16個。?
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮(北京)電子信息產業有限公司,未經浪潮(北京)電子信息產業有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410360196.5/2.html,轉載請聲明來源鉆瓜專利網。





