999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Sandy Bridge微架構(gòu)的革新

2011-01-01 00:00:00盤(pán)駿
計(jì)算機(jī)世界 2011年4期

上文中筆者介紹了Nehalem微架構(gòu)中存在的一些問(wèn)題,到了Sandy Bridge這一代,這些問(wèn)題還存在嗎?下面我們就來(lái)詳細(xì)解析Sandy Bridge的微架構(gòu),并介紹相對(duì)于Nehalem微架構(gòu)的改進(jìn)。

前端:

分支預(yù)測(cè)和微指令緩存

分支預(yù)測(cè)、指令拾取、預(yù)解碼以及解碼這幾個(gè)部件組成了處理器微架構(gòu)的Front-End前端部分。在Nehalem 微架構(gòu)中,指令拾取和預(yù)解碼存在問(wèn)題,在一些情況下會(huì)導(dǎo)致指令吞吐量過(guò)低,因此其前端是整個(gè)流水線當(dāng)中最容易成為瓶頸的階段。Sandy Bridge沒(méi)有直接在指令拾取和預(yù)解碼階段進(jìn)行改動(dòng),而是對(duì)整個(gè)前端部分進(jìn)行了重新設(shè)計(jì),通過(guò)革新的分支預(yù)測(cè)單元以及在解碼階段加入一個(gè)新的部件來(lái)增強(qiáng)整個(gè)前端部分的輸出能力,同樣達(dá)到了消除瓶頸的目的。

處理器的前端從L1 I-Cache拾取指令,在指令拾取單元沒(méi)有什么變化的情況下,Sandy Bridge的L1 I-Cache也有了些改進(jìn),提升了大型應(yīng)用程序下的性能。首先,它從Nehalem的4路組關(guān)聯(lián)提升到了8路組關(guān)聯(lián),從而降低了Cache Line碰撞的幾率,降低了頁(yè)面沖突;其次,L1 I-Cache對(duì)應(yīng)的L1 ITLB也略微擴(kuò)大,2M/4MB對(duì)應(yīng)的TLB表項(xiàng)從Nehalem的7+7提升到了8+8(對(duì)每一個(gè)硬件線程提供8個(gè)表項(xiàng)),可以覆蓋更大的代碼地址空間。

分支預(yù)測(cè)是一個(gè)既能提升性能又能降低能耗的做法,成功的分支預(yù)測(cè)可以避免無(wú)謂分支代碼執(zhí)行的性能、功耗損失。Sandy Bridge的分支預(yù)測(cè)單元在Nehalem的基礎(chǔ)上進(jìn)行了完全的重造。通過(guò)對(duì)分支表結(jié)構(gòu)的壓縮定義,BTB(Branch Target Buffer,分支目標(biāo)緩存)在同樣容量下將保存的分支目標(biāo)翻番,同樣,GBH(Global Branch History,全局分支歷史表)也能保存更多、更深的項(xiàng)目,總的來(lái)說(shuō),分支預(yù)測(cè)準(zhǔn)確率將會(huì)進(jìn)一步提升。

前端變化中作用更明顯的解碼器旁邊加入的uop cache(微指令緩存),這個(gè)部件和NetBurst微架構(gòu)的Trace Cache作用非常相似,不過(guò)卻是經(jīng)過(guò)了更多的調(diào)整和優(yōu)化,并且更加簡(jiǎn)潔。uop cache保存了已經(jīng)解碼的微指令,并且更加接近處理器的后端,因此也可以被稱(chēng)為L(zhǎng)0 I-Cache。根據(jù)英特爾的說(shuō)法,通常的應(yīng)用當(dāng)中其命中率可以達(dá)到80%,在命中這個(gè)緩存之后,包括復(fù)雜的解碼器在內(nèi)的其它前端部件可以關(guān)閉以節(jié)約能源,而由uop cache本身輸出指令。這個(gè)設(shè)計(jì)可以很明顯地降指令拾取低延遲乃至分支懲罰,讓前端可以在更多的時(shí)間內(nèi)處于持續(xù)輸出4 uop/cycle的狀態(tài),這很大程度消除了Nehalem前端的瓶頸。

后端:

物理寄存器文件架構(gòu)

Front-End前端緊接著的是Back-End后端部分,Sandy Bridge在后端部分也有了很大的變化,其中一個(gè)變化來(lái)自于寄存器文件的變遷。在之前,我們介紹了Nehalem微架構(gòu)采用的RRF(Retirement Register File,回退寄存器文件)存在的會(huì)導(dǎo)致寄存器讀停頓的問(wèn)題,Sandy Bridge通過(guò)采用了PRF(Physical Register File,物理寄存器文件)結(jié)構(gòu)來(lái)消除了這個(gè)問(wèn)題,和前面的uop cache一樣,PRF的設(shè)計(jì)也是從NetBurst架構(gòu)借鑒而來(lái)。幾乎所有的高性能處理器都采用了PRF的方式。

在Nehalem微架構(gòu)當(dāng)中,ROB(ReOrder Buffer,重排序緩存)順序保存了所有uop及其所有的重命名寄存器的數(shù)據(jù)和狀態(tài),架構(gòu)寄存器則保存在RRF當(dāng)中。在Sandy Bridge的PRF上,ROB不再保存重命名寄存器的數(shù)據(jù),取而代之的是保存多個(gè)指向PRF的指針,架構(gòu)寄存器包含在RRF當(dāng)中,通過(guò)狀態(tài)位來(lái)標(biāo)識(shí)。

物理寄存器文件有什么好處?首先,它消除了舊有的寄存器讀停頓造成的瓶頸,現(xiàn)在它不再受限于RRF三個(gè)讀取端口的限制,所有不同寄存器的內(nèi)容都可以同時(shí)進(jìn)行讀取,不會(huì)再引起流水線停頓。其次,物理寄存器文件消除了寄存器間數(shù)據(jù)的復(fù)制和移動(dòng),而只需要更改指針的指向即可,這節(jié)約了大量的數(shù)據(jù)移動(dòng)能耗,特別是在Sandy Bridge的AVX指令集支持更多的操作數(shù)以及支持的最大寄存器寬度翻倍的情況下。最后,ROB從保存數(shù)據(jù)變成保存指針導(dǎo)致了結(jié)構(gòu)上的簡(jiǎn)化,從而增大了ROB的容量,進(jìn)一步提升了處理器亂序執(zhí)行的性能。

Sandy Bridge的ROB從Nehalem的128項(xiàng)提升到了168項(xiàng),PRF物理寄存器文件包含了兩個(gè)部分:每項(xiàng)64bit 、一共160項(xiàng)目的整數(shù)寄存器文件和每項(xiàng)256bit 、一共144項(xiàng)目的浮點(diǎn)寄存器文件,并且PRF是每個(gè)硬件線程各自一份。在Sandy Bridge架構(gòu)當(dāng)中,還增加了一個(gè)硬件監(jiān)測(cè)機(jī)構(gòu),在使用SAVE/RESTORE指令進(jìn)行線程切換或者虛擬機(jī)切換的時(shí)候,可以?xún)H僅恢復(fù)/保存線程所使用到的寄存器,而不是恢復(fù)/保存所有的架構(gòu)寄存器,從而節(jié)約了上下文切換的時(shí)間,這可以提升處理器運(yùn)行大量線程和多個(gè)虛擬機(jī)的能力。

后端:

存取單元

微指令經(jīng)過(guò)重命名階段和讀取PRF數(shù)據(jù)之后進(jìn)入Reservation Station保留站,通過(guò)統(tǒng)一的調(diào)度器安排發(fā)射到6個(gè)不同的執(zhí)行單元之中。Sandy Bridge的Reservation Station容量從Nehalem的36項(xiàng)目提升到了54項(xiàng)目,增加了50%,亂序執(zhí)行窗口的擴(kuò)大可以提升處理器的亂序執(zhí)行能力。

Sandy Bridge的執(zhí)行單元也有了很大的改進(jìn)。執(zhí)行單元包括計(jì)算單元以及存取單元,這兩個(gè)都變化甚大,不過(guò)這里我們先介紹存取單元的變化,因?yàn)橹敖榻B過(guò)Nehalem 微架構(gòu)在這方面是個(gè)潛在的瓶頸。計(jì)算單元的改進(jìn)留到下一篇文章中再介紹。

Sandy Bridge架構(gòu)和Nehalem一樣具有3個(gè)存取端口,Store端口維持不變而Load端口的數(shù)量提升到了兩個(gè),并且這兩個(gè)Load端口的AGU地址生成單元均能生成Store操作使用的地址。Load端口翻番在某種程度上是為了適應(yīng)Sandy Bridge 處理器新增的AVX指令集帶來(lái)的256位計(jì)算能力,因?yàn)槊總€(gè)Load端口的寬度是128位。然而,現(xiàn)有的各種應(yīng)用也可以立即從中獲益,因?yàn)镹ehalem微架構(gòu)的Load端口僅占所有執(zhí)行單口的1/6,而Load操作通??梢哉紦?jù)uop當(dāng)中的約1/3。Sandy Bridge的雙Load端口可以每個(gè)時(shí)鐘周期進(jìn)行兩個(gè)128位Load操作,消除了上一代的瓶頸,工作起來(lái)也更為靈活。

和Load/Store單元連接的MOB(Memory Ordering Buffer,內(nèi)存排序緩存)也得到了增強(qiáng),MOB和前面的ROB一起屬于將亂序執(zhí)行和順序回退連接起來(lái)的重要部件。在MOB當(dāng)中,Load緩存從Nehalem的48項(xiàng)目提升到了64項(xiàng)目,提升幅度為33%,Store緩存從32項(xiàng)目略微提升到了36項(xiàng)目。Sandy Bridge的MOB一共可以容納100個(gè)訪存操作,這些數(shù)據(jù)操作均為256位寬度。

和Load能力翻倍配對(duì)的是L1 D-Cache的增強(qiáng),它的帶寬提升到了48字節(jié),也就是384位,比以往的32字節(jié)提升了50%,以同時(shí)支持兩個(gè)128位的Load和一個(gè)128位的Store操作。搭配的L1 DTLB據(jù)說(shuō)也有所改進(jìn),增加了4個(gè)支持1GB頁(yè)面的項(xiàng)目,以進(jìn)一部消除Nehalem微架構(gòu)在面對(duì)海量?jī)?nèi)存應(yīng)用下的性能問(wèn)題,這4個(gè)大頁(yè)面DTLB項(xiàng)目應(yīng)該是全關(guān)聯(lián)的,其它的L1 DTLB則應(yīng)該維持4路關(guān)聯(lián)不變。

在L2 Cache方面,Sandy Bridge相對(duì)Nehalem沒(méi)有太大的變化。

可以看到,通過(guò)將Nehalem 微架構(gòu)和NetBurst微架構(gòu)進(jìn)行融合,引入NetBurst上的微指令緩存和物理寄存器文件架構(gòu),并改進(jìn)Load/Store單元和L1 D-Cache帶寬設(shè)計(jì),Sandy Bridge消除了上一代Nehalem微架構(gòu)存在的比較明顯的三個(gè)瓶頸,還順帶獲得了更多的附加增益。Sandy Bridge在整個(gè)流水線的方方面面都得到了改進(jìn),然而還有一個(gè)很重要的部分沒(méi)有被提及:運(yùn)算單元,這個(gè)部分的變化和Sandy Bridge引入的AVX指令集緊密聯(lián)系,請(qǐng)看下回繼續(xù)分解。

主站蜘蛛池模板: 国产精品3p视频| 午夜电影在线观看国产1区| 欧美日韩一区二区三区在线视频| 婷婷色一区二区三区| 国产精品冒白浆免费视频| 在线国产欧美| 国产色网站| 日本午夜三级| 99久久精品国产综合婷婷| 亚洲综合色婷婷| 丁香婷婷久久| 国产精品手机视频| 亚洲AV无码乱码在线观看代蜜桃 | 亚洲精品高清视频| 草草影院国产第一页| 久久黄色影院| 午夜欧美理论2019理论| 亚洲视频三级| 在线观看热码亚洲av每日更新| 国产香蕉一区二区在线网站| 日韩av无码DVD| 久久semm亚洲国产| 国产一区二区精品福利| 99视频有精品视频免费观看| 亚洲综合一区国产精品| 高h视频在线| 在线精品自拍| 欧美一级色视频| 91原创视频在线| 亚洲黄网在线| 国产清纯在线一区二区WWW| 久久精品电影| 亚洲无码高清视频在线观看| 亚洲精品无码久久久久苍井空| 久久精品国产在热久久2019| 一本一道波多野结衣一区二区| a亚洲视频| 婷婷激情五月网| 国产麻豆精品手机在线观看| 日韩 欧美 小说 综合网 另类| 精品国产网| 精品国产污污免费网站| 中文字幕人妻av一区二区| 亚洲精品日产AⅤ| 日韩A∨精品日韩精品无码| 色综合久久88色综合天天提莫| www.日韩三级| 国产麻豆福利av在线播放| 日本a级免费| 日本成人精品视频| 日本久久网站| 超碰91免费人妻| 亚洲国产精品无码AV| 国产精品香蕉在线| 日本久久久久久免费网络| 国产亚洲精品无码专| 中美日韩在线网免费毛片视频| 99re热精品视频国产免费| 国产乱子伦精品视频| 女人天堂av免费| 在线中文字幕网| 国产一级二级在线观看| 亚洲Av综合日韩精品久久久| 亚洲日韩精品伊甸| 亚洲成网站| 成人第一页| 美女被狂躁www在线观看| 亚洲综合欧美在线一区在线播放| 国产成人高清精品免费| 亚洲侵犯无码网址在线观看| 国产另类视频| 亚洲国产欧美国产综合久久| 最新国产麻豆aⅴ精品无| 国模沟沟一区二区三区| 亚洲精品综合一二三区在线| 九九九精品成人免费视频7| 日本在线亚洲| 国产精品久久久久久久伊一| 大乳丰满人妻中文字幕日本| 久久免费精品琪琪| 国产精品专区第一页在线观看| 天堂亚洲网|