複製鏈接
請複製以下鏈接發送給好友

處理器性能

鎖定
處理器即指中央處理器CPU,CPU的性能大致上反映出了它所配置的那部微機的性能,因此CPU的性能指標十分重要。 CPU性能主要取決於其主頻和工作效率。
中文名
處理器性能
外文名
processor performance
別    名
CPU score
學    科
計算機科學與技術
類    別
計算機系統
主要參數
主頻和工作效率

處理器性能基本概念

處理器即指中央處理器CPU,CPU從雛形出現到發展壯大的今天,由於製造技術的越來越先進,其集成度越來越高,內部的晶體管數達到幾百萬個。雖然從最初的CPU發展到現在其晶體管數增加了幾十倍,但是CPU的內部結構仍然可分為控制單元邏輯單元存儲單元三大部分。CPU的性能大致上反映出了它所配置的那部微機的性能,因此CPU的性能指標十分重要。 CPU性能主要取決於其主頻和工作效率。

處理器性能性能參數

計算機的性能在很大程度上由CPU的性能決定,而CPU的性能主要體現在其運行程序的速度上。影響運行速度的性能指標包括CPU的工作頻率、Cache容量、指令系統和邏輯結構等參數 [1] 

處理器性能主頻

主頻也叫時鐘頻率,單位是兆赫(MHz)或千兆赫(GHz),用來表示CPU的運算、處理數據的速度。通常,主頻越高,CPU處理數據的速度就越快。
CPU的主頻=外頻×倍頻係數。主頻和實際的運算速度存在一定的關係,但並不是一個簡單的線性關係。 所以,CPU的主頻與CPU實際的運算能力是沒有直接關係的,主頻表示在CPU內數字脈衝信號震盪的速度。在Intel的處理器產品中,也可以看到這樣的例子:1 GHz Itanium芯片能夠表現得差不多跟2.66 GHz至強(Xeon)/Opteron一樣快,或是1.5 GHz Itanium 2大約跟4 GHz Xeon/Opteron一樣快。CPU的運算速度還要看CPU的流水線、總線等各方面的性能指標。

處理器性能外頻

外頻是CPU的基準頻率,單位是MHz。CPU的外頻決定着整塊主板的運行速度。通俗地説,在台式機中,所説的超頻,都是超CPU的外頻(當然一般情況下,CPU的倍頻都是被鎖住的)相信這點是很好理解的。但對於服務器CPU來講,超頻是絕對不允許的。前面説到CPU決定着主板的運行速度,兩者是同步運行的,如果把服務器CPU超頻了,改變了外頻,會產生異步運行,(台式機很多主板都支持異步運行)這樣會造成整個服務器系統的不穩定。
絕大部分電腦系統中外頻與主板前端總線不是同步速度的,而外頻與前端總線(FSB)頻率又很容易被混為一談。

處理器性能總線頻率

前端總線(FSB)是將CPU連接到北橋芯片的總線。前端總線(FSB)頻率(即總線頻率)是直接影響CPU與內存直接數據交換速度。有一條公式可以計算,即數據帶寬=(總線頻率×數據位寬)/8,數據傳輸最大帶寬取決於所有同時傳輸的數據的寬度和傳輸頻率。比方,支持64位的至強Nocona,前端總線是800MHz,按照公式,它的數據傳輸最大帶寬是6.4GB/秒。
外頻與前端總線(FSB)頻率的區別:前端總線的速度指的是數據傳輸的速度,外頻是CPU與主板之間同步運行的速度。也就是説,100MHz外頻特指數字脈衝信號在每秒鐘震盪一億次;而100MHz前端總線指的是每秒鐘CPU可接受的數據傳輸量是100MHz×64bit÷8bit/Byte=800MB/s。

處理器性能倍頻係數

倍頻係數是指CPU主頻與外頻之間的相對比例關係。在相同的外頻下,倍頻越高CPU的頻率也越高。但實際上,在相同外頻的前提下,高倍頻的CPU本身意義並不大。這是因為CPU與系統之間數據傳輸速度是有限的,一味追求高主頻而得到高倍頻的CPU就會出現明顯的“瓶頸”效應-CPU從系統中得到數據的極限速度不能夠滿足CPU運算的速度。一般除了工程樣版的Intel的CPU都是鎖了倍頻的,少量的如Intel酷睿2核心的奔騰雙核E6500K和一些至尊版的CPU不鎖倍頻,而AMD之前都沒有鎖,AMD推出了黑盒版CPU(即不鎖倍頻版本,用户可以自由調節倍頻,調節倍頻的超頻方式比調節外頻穩定得多)。

處理器性能緩存

緩存大小也是CPU的重要指標之一,而且緩存的結構和大小對CPU速度的影響非常大,CPU內緩存的運行頻率極高,一般是和處理器同頻運作,工作效率遠遠大於系統內存和硬盤。實際工作時,CPU往往需要重複讀取同樣的數據塊,而緩存容量的增大,可以大幅度提升CPU內部讀取數據的命中率,而不用再到內存或者硬盤上尋找,以此提高系統性能。但是由於CPU芯片面積和成本的因素來考慮,緩存都很小。
L1 Cache一級緩存)是CPU第一層高速緩存,分為數據緩存指令緩存。內置的L1高速緩存的容量和結構對CPU的性能影響較大,不過高速緩衝存儲器均由靜態RAM組成,結構較複雜,在CPU管芯面積不能太大的情況下,L1級高速緩存的容量不可能做得太大。一般服務器CPU的L1緩存的容量通常在32-256KB。
L2 Cache二級緩存)是CPU的第二層高速緩存,分內部和外部兩種芯片。內部的芯片二級緩存運行速度與主頻相同,而外部的二級緩存則只有主頻的一半。L2高速緩存容量也會影響CPU的性能,原則是越大越好,以前家庭用CPU容量最大的是512KB,筆記本電腦中也可以達到2M,而服務器和工作站上用CPU的L2高速緩存更高,可以達到8M以上。
L3 Cache三級緩存),分為兩種,早期的是外置,內存延遲,同時提升大數據量計算時處理器的性能。降低內存延遲和提升大數據量計算能力對遊戲都很有幫助。而在服務器領域增加L3緩存在性能方面仍然有顯著的提升。比方具有較大L3緩存的配置利用物理內存會更有效,故它比較慢的磁盤I/O子系統可以處理更多的數據請求。具有較大L3緩存的處理器提供更有效的文件系統緩存行為及較短消息和處理器隊列長度。
其實最早的L3緩存被應用在AMD發佈的K6-III處理器上,當時的L3緩存受限於製造工藝,並沒有被集成進芯片內部,而是集成在主板上。在只能夠和系統總線頻率同步的L3緩存同主內存其實差不了多少。後來使用L3緩存的是英特爾為服務器市場所推出的Itanium處理器。接着就是P4EE和至強MP。Intel還打算推出一款9MB L3緩存的Itanium2處理器,和以後24MB L3緩存的雙核心Itanium2處理器。
但基本上L3緩存對處理器的性能提高顯得不是很重要,比方配備1MB L3緩存的Xeon MP處理器卻仍然不是Opteron的對手,由此可見前端總線的增加,要比緩存增加帶來更有效的性能提升。

處理器性能工作電壓

工作電壓指的也就是CPU正常工作所需的電壓。
早期CPU(386、486)由於工藝落後,它們的工作電壓一般為5V,發展到奔騰586時,已經是3.5V/3.3V/2.8V了,隨着CPU的製造工藝與主頻的提高,CPU的工作電壓有逐步下降的趨勢,Intel最新出品的Coppermine已經採用1.6V的工作電壓了。低電壓能讓可移動便攜式筆記本,平板的電池續航時間提升,第二低電壓能使CPU工作時的温度降低,温度低才能讓CPU工作在一個非常穩定的狀態,第三,低電壓能使CPU在超頻技術方面得到更大的發展。

處理器性能製程

製程越小發熱量越小,這樣就可以集成更多的晶體管,CPU效率也就更高。
亂序執行分枝預測,亂序執行是指CPU採用了允許將多條指令不按程序規定的順序分開發送給各相應電路單元處理的技術。
分枝是指程序運行時需要改變的節點。分枝有無條件分枝和有條件分枝,其中無條件分枝只需要CPU按指令順序執行,而條件分枝則必須根據處理結果再決定程序運行方向是否改變,因此需要“分枝預測”技術處理的是條件分枝。
L1高速緩存,也就是我們經常説的一級高速緩存。在CPU裏面內置了高速緩存可以提高CPU的運行效率。
採用回寫(Write Back)結構的高速緩存。它對讀和寫操作均有可提供緩存。而採用寫通(Write-through)結構的高速緩存,僅對讀操作有效。在486以上的計算機中基本採用了回寫式高速緩存。
L2高速緩存,指CPU外部的高速緩存。
高速緩存是內置於CPU用來緩衝待處理的數據。緩存越大,可緩存的數據越多。但是L2Cache(L2高速緩存)並不是越大越好,超過某一額定效率提高並不明顯。L2Cache越大,發熱相對增加造成數據堆疊在L2Cache上。
Pentium Pro處理器的L2和CPU運行在相同頻率下的,但成本昂貴,所以Pentium II運行在相當於CPU頻率一半下的,容量為512K。為降低成本Intel公司曾生產了一種不帶L2的CPU名為賽揚

處理器性能超線程

可以同時執行多重線程,就能夠讓CPU發揮更大效率,那就是超線程(Hyper-Threading)技術,超線程技術減少了系統資源的浪費,可以把一顆CPU模擬成兩顆CPU使用,在同時間內更有效地利用資源來提高性能。

處理器性能處理技術

處理器性能流水線技術

在解釋超流水線與超標量前,先了解流水線(Pipeline)。流水線是Intel首次在486芯片中開始使用的。流水線的工作方式就象工業生產上的裝配流水線。在CPU中由5-6個不同功能的電路單元組成一條指令處理流水線,然後將一條X86指令分成5-6步後再由這些電路單元分別執行,這樣就能實現在一個CPU時鐘週期完成一條指令,因此提高CPU的運算速度。經典奔騰每條整數流水線都分為四級流水,即指令預取譯碼、執行、寫回結果,浮點流水又分為八級流水。超標量是通過內置多條流水線來同時執行多個處理器,其實質是以空間換取時間。而超流水線是通過細化流水、提高主頻,使得在一個機器週期內完成一個甚至多個操作,其實質是以空間換取時間。例如Pentium 4的流水線就長達20級。將流水線設計的步(級)越長,其完成一條指令的速度越快,因此才能適應工作主頻更高的CPU。但是流水線過長也帶來了一定副作用,很可能會出現主頻較高的CPU實際運算速度較低的現象,Intel的奔騰4就出現了這種情況,雖然它的主頻可以高達1.4G以上,但其運算性能卻遠遠比不上AMD 1.2G的速龍甚至奔騰III-s。
CPU封裝是採用特定的材料將CPU芯片或CPU模塊固化在其中以防損壞的保護措施,一般必須在封裝後CPU才能交付用户使用。CPU的封裝方式取決於CPU安裝形式和器件集成設計,從大的分類來看通常採用Socket插座進行安裝的CPU使用PGA(柵格陣列)方式封裝,而採用Slot x槽安裝的CPU則全部採用SEC(單邊接插盒)的形式封裝。還有PLGA(Plastic Land Grid Array)、OLGA(Organic Land Grid Array)等封裝技術。由於市場競爭日益激烈,CPU封裝技術的發展方向以節約成本為主。

處理器性能多線程

同時多線程Simultaneous Multithreading,簡稱SMT。SMT可通過複製處理器上的結構狀態,讓同一個處理器上的多個線程同步執行並共享處理器的執行資源,可最大限度地實現寬發射、亂序的超標量處理,提高處理器運算部件的利用率,緩和由於數據相關或Cache未命中帶來的訪問內存延時。當沒有多個線程可用時,SMT處理器幾乎和傳統的寬發射超標量處理器一樣。SMT最具吸引力的是隻需小規模改變處理器核心的設計,幾乎不用增加額外的成本就可以顯著地提升效能。多線程技術則可以為高速的運算核心準備更多的待處理數據,減少運算核心的閒置時間。這對於桌面低端系統來説無疑十分具有吸引力。Intel從3.06GHz Pentium 4開始,部分處理器將支持SMT技術。

處理器性能多核心

多核心,也指單芯片多處理器(Chip Multiprocessors,簡稱CMP)。CMP是由美國斯坦福大學提出的,其思想是將大規模並行處理器中的SMP(對稱多處理器)集成到同一芯片內,各個處理器並行執行不同的進程。這種依靠多個CPU同時並行地運行程序是實現超高速計算的一個重要方向,稱為並行處理。與CMP比較,SMP處理器結構的靈活性比較突出。但是,當半導體工藝進入0.18微米以後,線延時已經超過了門延遲,要求微處理器的設計通過劃分許多規模更小、局部性更好的基本單元結構來進行。相比之下,由於CMP結構已經被劃分成多個處理器核來設計,每個核都比較簡單,有利於優化設計,因此更有發展前途。IBM 的Power 4芯片和Sun的MAJC5200芯片都採用了CMP結構。多核處理器可以在處理器內部共享緩存,提高緩存利用率,同時簡化多處理器系統設計的複雜度。但這並不是説明,核心越多,性能越高,比如説16核的CPU就沒有8核的CPU運算速度快,因為核心太多,而不能合理進行分配,所以導致運算速度減慢。在買電腦時請酌情選擇。2005年下半年,Intel和AMD的新型處理器也將融入CMP結構。新安騰處理器開發代碼為Montecito,採用雙核心設計,擁有最少18MB片內緩存,採取90nm工藝製造。它的每個單獨的核心都擁有獨立的L1,L2和L3 cache,包含大約10億支晶體管。

處理器性能SMP

SMP(Symmetric Multi-Processing),對稱多處理結構的簡稱,是指在一個計算機上彙集了一組處理器(多CPU),各CPU之間共享內存子系統以及總線結構。在這種技術的支持下,一個服務器系統可以同時運行多個處理器,並共享內存和其他的主機資源。像雙至強,也就是所説的二路,這是在對稱處理器系統中最常見的一種(至強MP可以支持到四路,AMD Opteron可以支持1-8路)。也有少數是16路的。但是一般來講,SMP結構的機器可擴展性較差,很難做到100個以上多處理器,常規的一般是8個到16個,不過這對於多數的用户來説已經夠用了。在高性能服務器和工作站級主板架構中最為常見,像UNIX服務器可支持最多256個CPU的系統。
構建一套SMP系統的必要條件是:支持SMP的硬件包括主板和CPU;支持SMP的系統平台,再就是支持SMP的應用軟件。為了能夠使得SMP系統發揮高效的性能,操作系統必須支持SMP系統,如WINNT、LINUX、以及UNIX等等32位操作系統。即能夠進行多任務和多線程處理。多任務是指操作系統能夠在同一時間讓不同的CPU完成不同的任務;多線程是指操作系統能夠使得不同的CPU並行的完成同一個任務。
要組建SMP系統,對所選的CPU有很高的要求,首先、CPU內部必須內置APIC(Advanced Programmable Interrupt Controllers)單元。Intel 多處理規範的核心就是高級可編程中斷控制器(Advanced Programmable Interrupt Controllers–APICs)的使用;再次,相同的產品型號,同樣類型的CPU核心,完全相同的運行頻率;最後,儘可能保持相同的產品序列編號,因為兩個生產批次的CPU作為雙處理器運行的時候,有可能會發生一顆CPU負擔過高,而另一顆負擔很少的情況,無法發揮最大性能,更糟糕的是可能導致死機。

處理器性能NUMA技術

NUMA即非一致訪問分佈共享存儲技術,它是由若干通過高速專用網絡連接起來的獨立節點構成的系統,各個節點可以是單個的CPU或是SMP系統。在NUMA中,Cache 的一致性有多種解決方案,一般採用硬件技術實現對cache的一致性維護,通常需要操作系統針對NUMA訪存不一致的特性(本地內存和遠端內存訪存延遲和帶寬的不同)進行特殊優化以提高效率,或採用特殊軟件編程方法提高效率。NUMA系統的例子。這裏有3個SMP模塊用高速專用網絡聯起來,組成一個節點,每個節點可以有12個CPU。像Sequent的系統最多可以達到64個CPU甚至256個CPU。顯然,這是在SMP的基礎上,再用NUMA的技術加以擴展,是這兩種技術的結合。

處理器性能亂序執行

亂序執行(out-of-orderexecution),是指CPU允許將多條指令不按程序規定的順序分開發送給各相應電路單元處理的技術。這樣將根據個電路單元的狀態和各指令能否提前執行的具體情況分析後,將能提前執行的指令立即發送給相應電路單元執行,在這期間不按規定順序執行指令,然後由重新排列單元將各執行單元結果按指令順序重新排列。採用亂序執行技術的目的是為了使CPU內部電路滿負荷運轉並相應提高了CPU的運行程序的速度。

處理器性能分枝技術

(branch)指令進行運算時需要等待結果,一般無條件分枝只需要按指令順序執行,而條件分枝必須根據處理後的結果,再決定是否按原先順序進行 [2] 
參考資料
  • 1.    易建勳. 微處理器(CPU)的結構與性能[M]. 清華大學出版社, 2003.
  • 2.    魏建明. 簡釋與CPU性能參數相關的常用術語(上)[J]. 家電維修:大眾版, 2013(2):47-49.