很快,大多數(shù)硬件處理平臺(tái)將基于多核架構(gòu)。但這對(duì)傳統(tǒng)軟件應(yīng)用程序意味著什么?
與單核平臺(tái)相比,多核平臺(tái)能夠提供更高的性能、更低的功耗、更小的物理占用空間,甚至更低的物料成本。但是,除非傳統(tǒng)的單核優(yōu)化軟件應(yīng)用程序成功遷移到多核架構(gòu)上,否則這些好處都不會(huì)帶來(lái)。這并不一定意味著需要完成大量的軟件重構(gòu)工作。但這確實(shí)意味著開(kāi)發(fā)人員需要擁有正確的知識(shí)和工具來(lái)評(píng)估他們的選項(xiàng)并選擇正確的選項(xiàng)。
整合重頭戲
舊版軟件遷移最直接的方法是將多核平臺(tái)視為當(dāng)今使用的單核處理引擎的相同集合,只是內(nèi)核現(xiàn)在都在一個(gè)物理包中。換句話說(shuō),對(duì)于每個(gè)處理器,開(kāi)發(fā)人員將選擇適當(dāng)?shù)?a href="http://srfitnesspt.com/v/tag/527/" target="_blank">操作系統(tǒng)和應(yīng)用程序在其上運(yùn)行。虛擬化是實(shí)現(xiàn)這一目標(biāo)的常用方法,有時(shí)被視為多核旅程的第一步。這種方法將離散處理功能整合到多核平臺(tái)上,并且需要有限的新知識(shí)和軟件重構(gòu),盡管它只能提供前面提到的性能、功耗、大小和成本效益的一小部分,因?yàn)樗鼪](méi)有利用可用的固有并行處理。
平衡、優(yōu)化和機(jī)會(huì)
大多數(shù)開(kāi)發(fā)人員都知道,利用多核平臺(tái)基本優(yōu)勢(shì)的方法是解鎖其軟件應(yīng)用程序中存在的任何并發(fā)性,以便可以在可用處理器之間實(shí)現(xiàn)合理平衡的負(fù)載。挑戰(zhàn)在于,需要了解一些新概念,例如線程、數(shù)據(jù)依賴關(guān)系和數(shù)據(jù)爭(zhēng)用,以實(shí)現(xiàn)向多核平臺(tái)的高效遷移。軍事系統(tǒng)市場(chǎng)雖然有其自身的特質(zhì),但肯定也受到商業(yè)基本規(guī)則之一的支配:掌握新技術(shù)或技術(shù)比競(jìng)爭(zhēng)對(duì)手更快的公司會(huì)給自己帶來(lái)真正的差異化優(yōu)勢(shì)。
害怕跳?
要成為多核就緒的軟件開(kāi)發(fā)組織,需要將一些東西添加到工程師可用的技能、方法和工具庫(kù)中。這些對(duì)于滿足所有多核遷移項(xiàng)目核心的基本問(wèn)題至關(guān)重要:應(yīng)用程序中有多少并發(fā)性,解鎖它有多容易?傳統(tǒng)上,這個(gè)問(wèn)題的答案很難找到。通常有必要做所有的試錯(cuò)工程工作來(lái)回答它。因此,許多開(kāi)發(fā)團(tuán)隊(duì)拒絕采取這一步驟也就不足為奇了。這種不情愿是因?yàn)樗麄儾恢廊绾卧u(píng)估采用多核的好處,也不知道如何實(shí)現(xiàn)這樣的并發(fā)分析項(xiàng)目。因此,他們什么都不做。
穿越黑暗的指引
近年來(lái),CriticalBlue已幫助許多不同類型的組織遷移到并優(yōu)化其多核平臺(tái)的使用。Prism工具是在與經(jīng)驗(yàn)豐富的多核軟件開(kāi)發(fā)人員進(jìn)行廣泛協(xié)商后開(kāi)發(fā)的,旨在建立應(yīng)對(duì)上述挑戰(zhàn)所需的能力。這些討論輸出的一個(gè)小例子是,CriticalBlue的Prism具有假設(shè)探索功能,允許開(kāi)發(fā)人員無(wú)需首先修改代碼,就可以調(diào)查不同并行化方法,多核平臺(tái)和數(shù)據(jù)依賴關(guān)系管理方法的影響。該工具與一系列培訓(xùn)課程和方法服務(wù)相結(jié)合,提供了一個(gè)框架,可幫助開(kāi)發(fā)人員高效遷移遺留系統(tǒng)。
右腳向前
降低性能、功耗、尺寸和成本限制,同時(shí)提供基于現(xiàn)有傳統(tǒng)軟件的領(lǐng)先功能,是嵌入式系統(tǒng)盈利的關(guān)鍵。雖然多核硬件正在迅速成為常態(tài),但在運(yùn)行傳統(tǒng)應(yīng)用軟件時(shí)如何最好地利用此類平臺(tái)的知識(shí)有限。多核系統(tǒng)編程并不是一門全新的科學(xué);這是一個(gè)在現(xiàn)有和成熟的技能中添加一些新想法和技術(shù)的問(wèn)題。因此,管理將遺留軟件遷移到多核平臺(tái)的復(fù)雜性可以轉(zhuǎn)化為真正的業(yè)務(wù)差異化因素。那么,為什么不在競(jìng)爭(zhēng)中領(lǐng)先一步呢?
審核編輯:郭婷
-
處理器
+關(guān)注
關(guān)注
68文章
19048瀏覽量
228515 -
應(yīng)用程序
+關(guān)注
關(guān)注
37文章
3226瀏覽量
57511
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論