本期上海星屹小編給大家(jiā)分享的是工控機CPU基本概念介紹,希望看完本篇文章您能(néng)對(duì)工控機有一個全新的認識!
工控機CPU知識你(nǐ)了解多少呢?星屹小編将爲您詳細解讀工控機CPUSMP 、NUMA技術、亂序執行(háng / xíng)技術 、CPU内部的内存控制器這些概念。
1、SMP
SMP(Symmetric Multi-Processing),對(duì)稱多處理結構的簡稱,是指在一個計算機上彙集了一組處理器(多CPU),各CPU之間共享内存子系統以及總線結構。在這種技術的支持下(xià),一個服務器系統可(kě)以同時運行(háng / xíng)多個處理器,并共享内存和其(qí)他的主機資源。像雙至強,也就(jiù)是我們所(suǒ)說的二路,這是在對(duì)稱處理器系統中常見的一種(至強MP可(kě)以支持到四路,AMD Opteron可(kě)以支持1-8路)。也有少數是16路的。但是一般來講,SMP結構的機器可(kě)擴展性較差,很難做到100個以上多處理器,常規的一般是8個到16個,不過(guò)這對(duì)于(yú)多數的用(yòng)戶來說已經夠用(yòng)了。在高性能(néng)服務器和工作站級主闆架構中爲常見,像UNIX服務器可(kě)支持多256個CPU的系統。 構建一套SMP系統的必要(yào / yāo)條件是:支持SMP的硬件包括主闆和CPU;支持SMP的系統平台,再就(jiù)是支持SMP的應用(yòng)軟件。 爲了能(néng)夠使得(dé / de / děi)SMP系統發(fā/fà)揮高效的性能(néng),操作系統必須支持SMP系統,如(rú)WINNT、LINUX、以及UNIX等等32位操作系統。即能(néng)夠進行(háng / xíng)多任務和多線程處理。多任務是指操作系統能(néng)夠在同一時間讓不同的CPU完成不同的任務;多線程是指操作系統能(néng)夠使得(dé / de / děi)不同的CPU并行(háng / xíng)的完成同一個任務。 要(yào / yāo)組建SMP系統,對(duì)所(suǒ)選的CPU有很高的要(yào / yāo)求,首先、CPU内部必須内置APIC(Advanced Programmable Interrupt Controllers)單元。Intel 多處理規範的核xin就(jiù)是高級可(kě)編程中斷控制器(Advanced Programmable Interrupt Controllers--APICs)的使用(yòng);再次,相同的産品型号,同樣類型的CPU核xin,完全相同的運行(háng / xíng)頻率;後(hòu),盡可(kě)能(néng)保持相同的産品序列編号,因爲兩個生(shēng)産批次的CPU作爲雙處理器運行(háng / xíng)的時候,有可(kě)能(néng)會(huì)發(fā/fà)生(shēng)一顆CPU負擔過(guò)高,而(ér)另一顆負擔很少的情況,無法發(fā/fà)揮大性能(néng),更糟糕的是可(kě)能(néng)導緻死機。
2、NUMA技術
NUMA即非一緻訪問分布共享存儲技術,它是由若幹通過(guò)高速網絡連接起來的du立節點構成的系統,各個節點可(kě)以是單個的CPU或是SMP系統。在NUMA中,Cache 的一緻性有多種解決方案,需要(yào / yāo)操作系統和特殊軟件的支持。圖2中是Sequent公司NUMA系統的例子。這裏(lǐ)有3個SMP模塊用(yòng)高速網絡聯起來,組成一個節點,每個節點可(kě)以有12個CPU。像Sequent的系統多可(kě)以達到64個CPU甚至256個CPU。顯然,這是在SMP的基礎上,再用(yòng)NUMA的技術加以擴展,是這兩種技術的結合。
3、亂序執行(háng / xíng)技術
亂序執行(háng / xíng)(out-of-orderexecution),是指CPU允許将多條指令不按程序規定的順序分開發(fā/fà)送給各相應電路單元處理的技術。這樣将根據個電路單元的狀态和各指令能(néng)否提前執行(háng / xíng)的具體情況分析後(hòu),将能(néng)提前執行(háng / xíng)的指令立即發(fā/fà)送給相應電路單元執行(háng / xíng),在這期間不按規定順序執行(háng / xíng)指令,然後(hòu)由重新排列單元将各執行(háng / xíng)單元結果按指令順序重新排列。采用(yòng)亂序執行(háng / xíng)技術的目的是爲了使CPU内部電路滿負荷運轉并相應提高了CPU的運行(háng / xíng)程序的速度。分枝技術:(branch)指令進行(háng / xíng)運算時需要(yào / yāo)等待結果,一般無條件分枝隻需要(yào / yāo)按指令順序執行(háng / xíng),而(ér)條件分枝必須根據處理後(hòu)的結果,再決定是否按原先順序進行(háng / xíng)。
4、CPU内部的内存控制器
許多應用(yòng)程序擁有更爲複雜的讀取模式(幾乎是随機地,特别是當cache hit不可(kě)預測的時候),并且沒有有效地利用(yòng)帶寬。典型的這類應用(yòng)程序就(jiù)是業務處理軟件,即使擁有如(rú)亂序執行(háng / xíng)(out of order execution)這樣的CPU特性,也會(huì)受内存延遲的限制。這樣CPU必須得(dé / de / děi)等到運算所(suǒ)需數據被除數裝載完成才能(néng)執行(háng / xíng)指令(無論這些數據來自(zì)CPU cache還是主内存系統)。當前低段系統的内存延遲大約是120-150ns,而(ér)CPU速度則達到了3GHz以上,一次單獨的内存請求可(kě)能(néng)會(huì)浪費200-300次CPU循環。即使在緩存命中率(cache hit rate)達到99%的情況下(xià),CPU也可(kě)能(néng)會(huì)花50%的時間來等待内存請求的結束- 比如(rú)因爲内存延遲的緣故。 你(nǐ)可(kě)以看到Opteron整合的内存控制器,它的延遲,與芯片組支持雙通道DDR内存控制器的延遲相比來說,是要(yào / yāo)低很多的。英特爾也按照計劃的那(nà)樣在處理器内部整合内存控制器,這樣導緻北橋芯片将變得(dé / de / děi)不那(nà)麽重要(yào / yāo)。但改變了處理器訪問主存的方式,有助于(yú)提高帶寬、降低内存延時和提升處理器性能(néng)。
以上是上海星屹電子科技有限公司給大家(jiā)帶來的分享,希望對(duì)您有所(suǒ)幫助,您有工控機需求歡迎來電咨詢!