<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 測試測量 > 設計應用 > 通過(guò)LabVIEW優(yōu)化多核處理器環(huán)境下信號處理性能

通過(guò)LabVIEW優(yōu)化多核處理器環(huán)境下信號處理性能

作者: 時(shí)間:2012-10-17 來(lái)源:網(wǎng)絡(luò ) 收藏


程序性能的進(jìn)一步優(yōu)化

并行的算法不僅幫助工程師提高程序性能,而且可以更清楚的劃分多個(gè)處理器核在項目中的不同用途。比如,將控制采樣輸入,顯示輸出和信號分析的模塊獨立分開(kāi)。

以HIL(Hareware-in-the-loop)或在線(xiàn)應用為例。首先,使用高速數字化儀或高速數字I/O模塊來(lái)采集信號,并在軟件中執行數字算法。然后,通過(guò)另一個(gè)模塊化儀器生成結果。常見(jiàn)HIL應用包括在線(xiàn)數字信號處理(如濾波、插值等等)、傳感器仿真和定制組件模擬等等。

一般來(lái)說(shuō),HIL可以使用兩種基本的編程結構來(lái)完成,單循環(huán)結構和帶有隊列的流水線(xiàn)式多循環(huán)結構。單循環(huán)結構實(shí)現簡(jiǎn)單,對于小數據塊具有較低時(shí)延,但單循環(huán)結構受限于各個(gè)環(huán)節的順序結構而無(wú)法實(shí)現并發(fā)性,例如,由于處理器只能執行一個(gè)函數,在處理數據的同時(shí)就無(wú)法執行儀器IO,所以單循環(huán)結構無(wú)法有效利用多核CPU的優(yōu)勢。相比之下,多循環(huán)結構則能夠更好的利用到,從而支持高得多的吞吐量。

對于一項多循環(huán)結構的HIL應用來(lái)說(shuō),可以通過(guò)三個(gè)獨立的while循環(huán)和兩個(gè)隊列結構,實(shí)現其間的數據傳遞。在此情況下,第一個(gè)循環(huán)從儀器采集數據,第二個(gè)循環(huán)專(zhuān)門(mén)執行信號處理分析,而第三個(gè)循環(huán)將數據寫(xiě)入到另一臺儀器。這樣的處理方式,也被稱(chēng)之為流水線(xiàn)式信號處理(pipeline)。

newmaker.com
圖4.帶有多個(gè)循環(huán)與隊列結構的流水線(xiàn)式信號處理

圖4中,最上面的循環(huán)是一個(gè)生產(chǎn)者(Producer)循環(huán),它從一個(gè)高速數字化儀采集數據,并將其傳遞至第一個(gè)隊列結構(FIFO)。中間的循環(huán)同時(shí)作為生產(chǎn)者和消費者(Consumer)工作。每次迭代中,它從隊列結構中接收(消費)若干個(gè)數據集,并以流水線(xiàn)的方式獨立為四個(gè)不同數據塊的內容進(jìn)行7階低通濾波的處理,同時(shí)中間的循環(huán)也作為一個(gè)生產(chǎn)者工作,將處理后的數據傳遞至第二個(gè)隊列結構。最后,最下面的循環(huán)將處理后的數據寫(xiě)入至高速數字I/O模塊。于是,在多核的系統下, 能夠自動(dòng)地將上面的程序結構中獨立運行的的不同循環(huán)分配在不同的處理器上,同時(shí),還可以根據CPU的運行情況將中間循環(huán)中四個(gè)數據塊的信號處理任務(wù)也分配在不同的處理器上,實(shí)現了在環(huán)境下的性能改進(jìn)。

并行處理算法改善了多核CPU的處理器利用率。事實(shí)上,總吞吐量取決于兩個(gè)因素,處理器利用率和總線(xiàn)傳輸速度。通常,CPU和數據總線(xiàn)在處理大數據塊時(shí)工作效率最高。而且,我們可以進(jìn)一步使用具有更快傳輸速度的PXI(PCI) Express儀器,來(lái)減小數據傳輸時(shí)間。

利用NI強大的并行性計算的優(yōu)勢以及PCIe高速數據流傳輸加上Intel的多核技術(shù),在DELL的PowerEdge 2950八核處理器上,以10KHz(2.56MB/s)的速率同步采樣并處理128個(gè)通道的數據,NI幫助ASDEX Tokamak——德國最先進(jìn)的核聚變裝置,完成了“不可能完成的任務(wù)”——為了保證Tokamak裝置中等離子體的高速穩定的運轉,將其裝置外壁上的88個(gè)磁感應器上的大量數據轉換成64*128個(gè)點(diǎn)格上的偏微分方程組,并同時(shí)在短短的1ms內完成了整個(gè)計算過(guò)程!

正如德國開(kāi)發(fā)負責人Dr. Louis Giannone所說(shuō)的:
“利用編程所完成的并行化應用控制,我們在8核機器上將速度提高了5倍,使得我們成功達到1ms閉環(huán)控制速率的要求!”。

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: LabVIEW 多核處理器 信號處理

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>