国产成人福利在线视频播放下载,成人无码www免费视频在线看,放荡的美妇在线播放,大地资源网最新更新,国产成人精品日本亚洲网站

泡泡網(wǎng)CPU頻道 PCPOP首頁      /      CPU     /      評測    /    正文

性能之王還是不進反退,Prescott全

    要理解前頁所述的改進,我們就必須首先了解分支預測的一些基本原理。   

    同大多數(shù)處理器一樣,Prescott處理器的分支預測機構(gòu)可以分為動態(tài)分支預測機構(gòu)以及靜態(tài)分支預測機構(gòu)兩大類,而其中動態(tài)分支預測機構(gòu)由分支目標緩沖(Branch Target Buffer ,以下簡稱BTB)以及預測跳轉(zhuǎn)條件是否滿足的動態(tài)預測機構(gòu)組成:


 分支預測原理圖(點擊放大)

    圖中可見,BTB與我們熟悉的一級、二級緩存十分類似,只不過緩存的對象不同而已,前者緩存了分支指令及其挑轉(zhuǎn)目標的地址,而后兩者則緩存具體的數(shù)據(jù)或指令。在每一個BTB的條目中,集中存儲了分支指令地址、跳轉(zhuǎn)地址以及分支指令的跳轉(zhuǎn)歷史紀錄。需要注意的是,由于P4對于其分支預測機構(gòu)的細節(jié)一直不愿意做過多的透露,因此其中實際的分支預測機構(gòu)組成狀況,與上圖所表示的結(jié)構(gòu)必然在細節(jié)上存在許多不同之處,但從原理上說,二者是基本相同的。

    大致了解了分支預測的原理之后,再回過頭來看Prescott中的分支預測改進狀況,就較好理解了。

    ◎ 動態(tài)分支預測方面,與其它處理器不太相同,P4處理器在指令預取單元和Tace Cache單元上,各放置了一套BTB機構(gòu),但兩套BTB機構(gòu)的作用和工作原理是類似的。增加BTB條目數(shù),能夠紀錄的分支指令數(shù)就越多,當遇上分支指令較密集,分支指令跳轉(zhuǎn)情況變化較復雜的程序時,將體現(xiàn)出一定的優(yōu)勢。

    ◎ 此外,由于分支預測指令中的跳轉(zhuǎn)地址有可能使用變量表示,而不是如我們上面舉例的那樣總是5、150這樣的常數(shù);這種情況我們稱為非直接跳轉(zhuǎn)分支(Indirect Branch)。如果此時仍然使用圖中的機構(gòu),顯然將造成BTB的頻繁預測失?。▋Υ嬖贐TB中的分支跳轉(zhuǎn)地址可能是不斷變化的)。Intel宣稱在Prescott的動態(tài)分支預測機構(gòu)中加入由Pentiumn M(Banis)中引用的非直接跳轉(zhuǎn)分支預測功能。這樣,就提高了執(zhí)行非直接跳轉(zhuǎn)分支時的預測成功率。

    ◎ 作為動態(tài)分支預測的一種侯補方案,靜態(tài)分支預測的性能對于處理器來說也具備一定的重要性。靜態(tài)分支預測方面,在過去的P4里,一直奉行以下的原則:

 如果分支所跳轉(zhuǎn)的地址為逆向跳轉(zhuǎn),則靜態(tài)預測為分支跳轉(zhuǎn)成立,執(zhí)行跳轉(zhuǎn);而如果分支所跳轉(zhuǎn)的地址為正向跳轉(zhuǎn),則靜態(tài)預測為分支跳轉(zhuǎn)不成立,按照編譯順序讀取下一條指令,下圖表示了這種靜態(tài)策略:

  

 Northwood的靜態(tài)分支預測(點擊放大)

    的確,在分支循環(huán)次數(shù)較多的程序中,這樣的靜態(tài)預測方案所得到的預測命中率較高。但是如果遇到的不是循環(huán)用分支語句,如果還這樣預測就不行了。所幸大多數(shù)情況下,分支循環(huán)程序所包含的指令數(shù)目都比較小(意味著循環(huán)跳轉(zhuǎn)的地址偏移量不會很大),因此在Prescott中,Intel在原有的靜態(tài)分支策略中加入了距離判斷算法,僅在所跳轉(zhuǎn)的地址為逆向跳轉(zhuǎn),且跳轉(zhuǎn)的地址距離分支指令本身的地址偏移量較小時,才執(zhí)行跳轉(zhuǎn)。下圖表示Prescott與舊P4在這方面的區(qū)別:

 更智能化的Prescott靜態(tài)分支預測

    顯然,這樣的靜態(tài)分支預測辦法顯得比以前所使用的方法更加“智能化“一些。<

0人已贊

關(guān)注我們

泡泡網(wǎng)

手機掃碼關(guān)注