[發(fā)明專利]面向CPU+GPU處理器的混合粒度一致性維護方法有效
| 申請?zhí)枺?/td> | 201510092458.9 | 申請日: | 2015-03-02 |
| 公開(公告)號: | CN104615576B | 公開(公告)日: | 2017-03-15 |
| 發(fā)明(設計)人: | 邢座程;唐川;張洋;劉蒼;湯先拓;王鋒;王慶林;原略超;呂朝;董永旺;危樂 | 申請(專利權)人: | 中國人民解放軍國防科學技術大學 |
| 主分類號: | G06F15/16 | 分類號: | G06F15/16 |
| 代理公司: | 國防科技大學專利服務中心43202 | 代理人: | 郭敏 |
| 地址: | 410073 湖*** | 國省代碼: | 湖南;43 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 面向 cpu gpu 處理器 混合 粒度 一致性 維護 方法 | ||
技術領域
本發(fā)明主要涉及片上異構多核處理器一致性維護方法,特指CPU+GPU片上異構多核系統(tǒng),也適用于其它具有類似訪存特征的異構多核體系結構。
背景技術
傳統(tǒng)多核處理器利用多個復雜重核高效快速地處理單個或幾個程序,有較好的控制性,時鐘頻率高,單線程執(zhí)行快,目前主要面向桌面及服務器領域。眾核加速處理器,如圖像處理器(GPU),由大量簡單核組成,并行處理能力強,能效高,具有計算密集型優(yōu)勢,其應用領域從圖像處理逐步轉向科學計算。異構多核處理器體系結構融合了通用處理器單線程能力和眾核加速處理器多線程并行處理能力的優(yōu)勢,是未來面向領域應用的多核處理器發(fā)展方向。CPU+GPU的片上異構多核結構已經(jīng)成功的商業(yè)化,并占據(jù)了個人PC市場的大量份額。片上融合的CPU+GPU結構利用共享存儲和統(tǒng)一的地址空間,減少了傳統(tǒng)分離結構中CPU和GPU間的通信開銷,并簡化了編程人員的工作負擔。與此同時,由于存儲共享,多個核的私有緩存(Cache)中會擁有同一地址數(shù)據(jù)的副本,從程序語義考慮,數(shù)據(jù)的多個副本必須是最新的且完全一致的,這就是多核共享存儲的Cache一致性問題。
一直以來,業(yè)界多采用一致性協(xié)議來維護Cache的一致性,一致性協(xié)議主要分為兩類:軟件一致性協(xié)議和硬件一致性協(xié)議。軟件一致性協(xié)議主要依賴編譯器,通過顯式的作廢指令或清空指令來作廢和清除多余的副本以實現(xiàn)Cache的一致性。硬件一致性協(xié)議則僅依賴硬件,不需要軟件和編譯器的干預,針對不同的訪存請求,自主實現(xiàn)Cache的一致性。訪存請求可以分為四類:寫回請求,該請求要將訪存請求中的目標地址的最新數(shù)據(jù)從緩存中寫回到主存,使得該數(shù)據(jù)的所有副本都是最新的;逐出請求,該請求要將訪存請求中的目標地址對應的數(shù)據(jù)(若數(shù)據(jù)為修改過的,會先有寫回請求,然后再發(fā)出逐出請求)從緩存中逐出(即作廢);寫請求,該請求要修改訪存請求中的目標地址對應的數(shù)據(jù);讀請求,該請求要將訪存請求中的目標地址對應的數(shù)據(jù)傳給請求來源。硬件一致性協(xié)議根據(jù)訪存請求的不同類型,通過硬件自主地定位目標地址對應的數(shù)據(jù)在各個核私有Cache中的副本,采用作廢或者更新相應的副本等操作,以保證所有數(shù)據(jù)是一致的且最新的。硬件一致性協(xié)議是當前主流的一致性協(xié)議實現(xiàn)方法。
常見的硬件一致性協(xié)議有監(jiān)聽協(xié)議、目錄協(xié)議和令牌協(xié)議。令牌協(xié)議是新興的一致性協(xié)議維護方法,主要是學術界在研究,并未在商業(yè)界使用。監(jiān)聽協(xié)議則需要多核處理器中所有處理器共享同一條通信總線,每一個處理器發(fā)送訪存請求后會獨占這條通信總線,其他處理器的請求只能等待,直到占據(jù)總線的請求服務完畢,其余處理器才能競爭通信總線的下一次使用權限。當處理器的數(shù)量較多的時候,無論是獨占通信總線導致的其他處理器的等待,還是對通信總線的競爭都會導致吞吐率(即單位時間內服務的請求數(shù)量)的下降。同時,由于監(jiān)聽協(xié)議并不會詳細記錄每一個數(shù)據(jù)副本的具體位置,而是通過廣播的方式,將請求告訴所有處理器,如果該處理器有所請求的數(shù)據(jù)副本,就會做相應的處理,如果沒有就忽略當前請求。這些被忽略的請求并沒有存在的必要,反而造成額外的功耗開銷。所以目前商業(yè)界主要采用目錄協(xié)議。目錄協(xié)議的硬件基礎是目錄緩存,緩存的每一項對應一個數(shù)據(jù)緩存塊(Cacheline,處理器對數(shù)據(jù)的讀寫請求的基本單位),用以記錄對應Cacheline的一致性信息。目錄緩存項一般擁有三個域,分別是Cacheline的索引標志(tag)、狀態(tài)信息和共享者列表。索引標志用來判定處理器請求的數(shù)據(jù)地址與目錄當前項是否一致。狀態(tài)信息有三種狀態(tài):無效、共享、私有,分別表示當前Cacheline是否有效、是否被處理器共享和是否被修改獨占。而共享者列表則記錄有哪些處理器擁有當前Cacheline的副本,這樣在修改當前Cacheline時就可以通過查找共享者列表,精確定位所有擁有該Cacheline副本的處理器,只對這些處理器發(fā)出相應的請求,避免了監(jiān)聽協(xié)議中產生的無用請求。由于目錄協(xié)議詳細記錄了所有Cacheline的一致性信息,若某一個處理器要修改某地址的數(shù)據(jù),根據(jù)目錄內的相關信息,作廢其他副本擁有者的數(shù)據(jù)或者同時修改所有副本就可以保證Cache的一致性。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國人民解放軍國防科學技術大學,未經(jīng)中國人民解放軍國防科學技術大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510092458.9/2.html,轉載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字數(shù)據(jù)處理
G06F15-00 通用數(shù)字計算機
G06F15-02 .通過鍵盤輸入的手動操作,以及應用機內程序的計算,例如,袖珍計算器
G06F15-04 .在引入被處理的數(shù)據(jù)的同時,進行編制程序的,例如,在同一記錄載體上
G06F15-08 .應用插接板編制程序的
G06F15-16 .兩個或多個數(shù)字計算機的組合,其中每臺至少具有一個運算器、一個程序器及一個寄存器,例如,用于數(shù)個程序的同時處理
G06F15-18 .其中,根據(jù)計算機本身在一個完整的運行期間內所取得的經(jīng)驗來改變程序的;學習機器





