開磊
(安徽省合肥市安徽新華學(xué)院國際教育學(xué),安徽 合肥 230088)
多核處理器包括異構(gòu)、同構(gòu)兩大類型,其中內(nèi)部核結(jié)構(gòu)存在差異的即為異構(gòu),內(nèi)部核結(jié)構(gòu)一致的為同構(gòu)。所以針對(duì)差異化的應(yīng)用,對(duì)核結(jié)構(gòu)的具體實(shí)現(xiàn)進(jìn)行分析,直接影響到今后微處理器的性能強(qiáng)弱。核結(jié)構(gòu)對(duì)芯片性能、功耗及面積有著直接的聯(lián)系,對(duì)以往處理器的優(yōu)點(diǎn)進(jìn)行保留,并在此基礎(chǔ)上進(jìn)一步的發(fā)展,這些都同多核實(shí)現(xiàn)周期、性能相關(guān)。除此之外,參考Amdahl定理,串行部分性能影響著程序加速比,因此基于理論角度進(jìn)行分析,異構(gòu)微處理器結(jié)構(gòu)性能較佳[1]。系統(tǒng)實(shí)現(xiàn)也直接受核指令系統(tǒng)的影響,在多核中運(yùn)用的指令一致與否,且運(yùn)行操作系統(tǒng)可以運(yùn)行,成為當(dāng)前探究重點(diǎn)。
在安全性、功耗、軟件及結(jié)構(gòu)等層面,多核處理器在設(shè)計(jì)難度上明顯比單核處理器大,而且發(fā)展前景非常廣闊。
SMT、CMP的研究核心就是粗粒度并行性的運(yùn)算,其中在大規(guī)模集成電路技術(shù)進(jìn)步的同時(shí)而形成的CMP,當(dāng)芯片容量較大的情況下,能夠?qū)Σ⑿刑幚斫Y(jié)構(gòu)下DSM、SMP節(jié)點(diǎn)進(jìn)行集成,并均放置于芯片中,不同處理器能夠以并行的方式對(duì)進(jìn)程、線程進(jìn)行執(zhí)行。針對(duì)SMP的單芯片多處理機(jī),借助片外共享存儲(chǔ)器、Cache都可以使不同處理器開展通信;但是DSM的單芯片多處理器,只有在對(duì)分布式存儲(chǔ)器的片內(nèi)高速交叉開關(guān)網(wǎng)絡(luò)進(jìn)行連接的情況下,才能夠開展通信。
因?yàn)楫?dāng)前DSM、SMP的發(fā)展進(jìn)入到成熟化的階段,能夠簡便設(shè)計(jì)CMP結(jié)構(gòu),嚴(yán)格的僅在于芯片制造工藝及設(shè)計(jì)后端[2]。由此,商用CPU比較青睞的高性能處理器結(jié)構(gòu)即為CMP。
集成度較高的多核處理器具有很大的優(yōu)勢(shì),可以顯著提升芯片性能,然而也存在系統(tǒng)級(jí)問題,需要進(jìn)行深入的研究應(yīng)對(duì)辦法。
多核處理器在核結(jié)構(gòu)一致性方面沒有限制,一般來說,設(shè)計(jì)簡便化的就是同構(gòu)多核處理器,因?yàn)椴煌私Y(jié)構(gòu)相一致,因此不同核都是通用處理單元,運(yùn)用的是對(duì)不同程序的平均執(zhí)行性能都進(jìn)行優(yōu)化的設(shè)計(jì)思想,共享資源的調(diào)度方式、通訊方式、內(nèi)核互聯(lián)才是設(shè)計(jì)的關(guān)鍵所在,其中通訊方法包括共享存儲(chǔ)、共享Cache等等。而對(duì)于異構(gòu)多核處理器來說,設(shè)計(jì)難度相對(duì)較大,要兼顧內(nèi)核存儲(chǔ)結(jié)構(gòu)、互聯(lián)通信及結(jié)合不同內(nèi)核下應(yīng)用程序?qū)翁幚砥鬟M(jìn)行設(shè)計(jì)等多方面因素,同時(shí)其底層架構(gòu)依托于操作系統(tǒng),不然根本不能發(fā)揮異構(gòu)多核處理器的作用及優(yōu)點(diǎn)。分配任務(wù)的過程中,操作系統(tǒng)應(yīng)針對(duì)核特點(diǎn)開展分配工作,結(jié)合差異化的需求,確保計(jì)算內(nèi)核能夠有效完成任務(wù)。
同以往多處理器核統(tǒng)一構(gòu)建發(fā)展的要求進(jìn)行設(shè)計(jì)的原則不同,在設(shè)計(jì)異構(gòu)多核處理器體系結(jié)構(gòu)的過程中,運(yùn)用的自動(dòng)化構(gòu)建方法,針對(duì)特定方面的專項(xiàng)設(shè)計(jì)目標(biāo)取代了通用設(shè)計(jì)目標(biāo)。在應(yīng)用程序需求不斷提升、工藝發(fā)展迅速的背景下,當(dāng)下多核處理器節(jié)點(diǎn)設(shè)置為處理器(含有加速功能單元、可配置)無法達(dá)不到性能需求,反而運(yùn)用定制理器核,能夠通過有效、靈活的方式來實(shí)現(xiàn)多處理器核配置,所以成為當(dāng)前異構(gòu)多核處理器體系結(jié)構(gòu)研究計(jì)開發(fā)熱點(diǎn)。此外,在設(shè)計(jì)異構(gòu)多核處理器體系結(jié)構(gòu)的過程中,要基于差異化體系結(jié)構(gòu)處理器核中,來映射任務(wù),實(shí)現(xiàn)任務(wù)通信。
異構(gòu)多核處理器和同構(gòu)多核處理器相比,其差異化框架結(jié)構(gòu)內(nèi)核相對(duì)較多,異構(gòu)多核結(jié)構(gòu)構(gòu)建的關(guān)鍵和根本就是對(duì)不同內(nèi)核結(jié)構(gòu)、功能特點(diǎn)進(jìn)行明確。通常,異構(gòu)結(jié)構(gòu)下的各單處理器均為結(jié)合一個(gè)特定應(yīng)用特征來選取、設(shè)計(jì),而開展設(shè)計(jì)工作時(shí),相關(guān)工作者要對(duì)內(nèi)核功能是否重復(fù)這個(gè)問題進(jìn)行分析。如果處理器內(nèi)核存在結(jié)構(gòu)重復(fù)的狀況,就會(huì)出現(xiàn)結(jié)構(gòu)類似的結(jié)果,也有可能出現(xiàn)一致部分,最終出現(xiàn)結(jié)構(gòu)冗余的問題,這是設(shè)計(jì)工作的一大難題。開展實(shí)踐運(yùn)用的過程中,一些異構(gòu)系統(tǒng)因?yàn)檫\(yùn)用需求,規(guī)定處理器內(nèi)核要存在功能一致的狀況,這同運(yùn)用特殊需求所導(dǎo)致的[3]。因此,涉及工作人員要對(duì)重復(fù)性必要與否這個(gè)問題進(jìn)行詳細(xì)分析,這樣才能夠更好地完成設(shè)計(jì)異構(gòu)結(jié)構(gòu)的任務(wù)。
設(shè)計(jì)多核處理器的核心就在于核間互聯(lián)技術(shù),多核性能直接受通信協(xié)議、核間互連方式二者的影響。以往注重主頻的微處理器在形成多核處理器之后發(fā)生了極大的轉(zhuǎn)變,向著更多處理器核的方向發(fā)展。當(dāng)下,芯片性能提升受到阻礙的關(guān)鍵就在于很多處理器核的彼此通信。要想使大量的處理器核進(jìn)行協(xié)同性的運(yùn)行,應(yīng)保障相互間的有效信息通信。大量處理器核借助高效互連結(jié)構(gòu),能夠針對(duì)海量信息進(jìn)行共享和互通,使處理器核間并行運(yùn)行變?yōu)榱爽F(xiàn)實(shí)。因?yàn)閮?nèi)核存在異構(gòu)性、內(nèi)核間性能存在差異的特點(diǎn),所以在設(shè)計(jì)異構(gòu)多核的互聯(lián)時(shí)變得難度非常大,要想有效的設(shè)計(jì)異構(gòu)多核并充分發(fā)揮其優(yōu)勢(shì),就需要將核間互聯(lián)問題進(jìn)行很好的處理。
如果內(nèi)核量不多,在共享存儲(chǔ)器的前提下進(jìn)行總線互聯(lián)是直接化的互聯(lián)途徑。能夠借助片上系統(tǒng)的分時(shí)共享總線手段,使內(nèi)核彼此能夠進(jìn)行互聯(lián)。AMBA、WISHBONE為運(yùn)用率較高的分時(shí)共享總線。借助總線技術(shù)開展內(nèi)核間的互聯(lián),存在一定弊端,例如:可擴(kuò)展性差、通信效能低、同步難度大、功耗大及不可靠等問題。