[發明專利]自適應處理遠程原子執行有效
| 申請號: | 201010220346.4 | 申請日: | 2010-06-24 |
| 公開(公告)號: | CN101937331A | 公開(公告)日: | 2011-01-05 |
| 發明(設計)人: | J·B·弗里曼;E·T·格羅喬夫斯基;T·胡安;A·T·富爾塞斯;J·梅吉亞;R·孫達拉拉曼;E·斯普蘭格爾;R·埃斯帕薩;R·拉瓦 | 申請(專利權)人: | 英特爾公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F9/38 |
| 代理公司: | 中國專利代理(香港)有限公司 72001 | 代理人: | 湯春龍;王洪斌 |
| 地址: | 美國加利*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 自適應 處理 遠程 原子 執行 | ||
技術領域
本發明涉及自適應處理遠程原子執行。
背景技術
在許多指令集架構(ISA)中,存在指令以處理所謂的原子序列。在原子序列中,代理以如下方式執行對數據的操作:確保代理具有數據的獨占擁有權,直到執行完成。通常這可通過鎖定序列來實現,其中鎖變量與數據相關聯,使得代理在訪問要對其操作的數據之前首先獲得對鎖變量的獨占訪問,以阻止其它代理在該操作期間訪問對應的數據。
有兩種典型的方法用于處理爭用的原子,即本地操作或遠程執行(remote?execution)。第一種方法對于執行原子操作是快速的,但是由于高速緩存行跳動(cacheline?bouncing)和一致性而具有高開銷成本,對于爭用數據導致低帶寬。第二種方法對于原子操作具有差的等待時間,但是對于爭用數據具有高帶寬。
原子序列上的管芯上(On-die)爭用(利用臨界區域或其它構造)通常留給編程器明確管理。通過仔細檢測(instrumentation)原始程序,降低原子操作的粒度并且可最小化爭用。然而,這種性能調整工作一般不可從一類機器縮放到另一類。而且,仔細檢測需要編程器額外注意以開發考慮了原子操作的代碼,這通常需要額外的編程器工作,并且無法很好地適合不同的機器。例如,在具有兩個核的處理器中可避免爭用的編程器編寫的代碼可能無法很好地適合于(scale?very?well?to)許多核的實現,其中存在其中每個都可執行多線程的許多核。
發明內容
本發明的第一方面在于一種方法,包括:接收用于在處理器的第一核中解碼的第一指令,并相對于所述第一指令確定是否預測到爭用;以及用多個行為之一動態處理所述第一指令,包括:如果沒預測到爭用,則在所述第一核中執行所述第一指令,并且,如果預測到爭用,則在所述第一核中編組與所述第一指令相關聯的數據,并將具有所編組數據的遠程執行請求發送到所選遠程代理以便執行所述第一指令。
本發明的第二方面在于一種設備,包括:多核處理器,包含:多個核,其中每個核都包含前端以解碼指令并相對于所述指令確定是否預測到爭用;執行邏輯,如果沒預測到爭用,則本地執行所述指令,并且如果預測到爭用,則編組與所述指令相關聯的數據,并將具有所編組數據的遠程執行請求發送到所選遠程代理以便執行所述指令;以及預測器,具有多個項目,每個項目用于存儲有關在執行期間是否要爭用與所述項目相關聯的指令的預測。
本發明的第三方面在于一種系統,包括:處理器,包含具有:前端,解碼指令并相對于所述指令確定是否預測到爭用;動態執行邏輯,如果沒預測到爭用,則本地執行所述指令,否則編組與所述指令相關聯的數據,并將具有所編組數據的遠程執行請求發送到所選遠程代理以便執行所述指令;以及預測器,具有多個項目,每個項目用于存儲有關在執行期間是否要爭用與所述項目相關聯的指令的預測;目錄,具有多個項目,每個項目用于存儲有關所述系統的高速緩存中所存儲的高速緩存行的標簽信息,每個目錄還包含具有各與核相關聯的多個核字段的爭用矢量,每個核字段包含第一指示符和第二指示符,各用于指示相關聯的核在時段內利用原子操作訪問所述高速緩存行;以及動態隨機存取存儲器(DRAM),耦合到所述目錄和所述處理器。
附圖說明
圖1是根據本發明一個實施例的預測器的框圖。
圖2是根據本發明一個實施例基于爭用預測來處理指令的流程圖。
圖3是根據本發明一個實施例的爭用標簽矢量(contention?tag?vector)的框圖。
圖4A是根據本發明一個實施例處理操作的遠程執行的流程圖。
圖4B是根據本發明一個實施例在目錄中處理遠程執行的流程圖。
圖4C-4E例證了根據本發明一個實施例在擁有者核中處理遠程執行的流程圖。
圖5是根據本發明一個實施例的處理器的框圖。
圖6是根據本發明一個實施例的系統的框圖。
具體實施例
在各種實施例中,透明微架構機構可動態檢測和優化爭用的原子操作(諸如前綴為LOCK的指令)。具體地說,當在程序執行的全部時間中鎖經歷了變化級別的爭用時,實施例可以對編程器、操作系統和指令集架構(ISA)透明的方式自適應地在模式之間切換。
在一個實現中,可使用如下組件實現動態鎖操作:(i)基于預測來動態識別爭用行為的機構;(ii)在指令解碼期間對于任何給定指令在爭用/不爭用行為之間切換以選擇最有效執行的機構;(iii)提供反饋以更新預測器系統的機構;以及(iv)用于原子操作的代理執行(proxy-execution)的機構。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于英特爾公司,未經英特爾公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201010220346.4/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:電力線路砼桿標識牌固定連接件
- 下一篇:渦流現象演示儀





