下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
數(shù)據(jù)流編程以及LabVIEW多核編程因為NILabVIEW是數(shù)據(jù)流編程語言,開發(fā)者們可以編寫并行的應(yīng)用程序,這些應(yīng)用程序可以直接映射到并行的硬件(如多核心處理器和FPGA等)上以獲得最優(yōu)異的性能。這篇白皮書討論了什么是數(shù)據(jù)流編程以及為什么說NILabVIEW是多核系統(tǒng)編程的首選。1.免費午餐結(jié)束了近幾年來,處理器的速度遭遇到了瓶頸。摩爾定律表明,每隔18到24個月芯片中晶體管的數(shù)量就會增加一倍。這在過去的40年里始終是適用的,但是芯片性能卻不再保持線性增加了。過去,芯片生產(chǎn)廠商通過增加處理器的時鐘速度來提高芯片的性能,如從100MHz到200MHz,再到最近的數(shù)GHz的范圍。但是在今天,由于功耗和散熱的限制,通過提高時鐘速度來增加性能的方法行不通了。芯片廠商開始轉(zhuǎn)向另一種全新的芯片構(gòu)架,就是在單芯片上集成多個處理器內(nèi)核。相對于單核處理器,程序員們可以使用多核處理器完成更多的任務(wù)。為了充分利用多核處理器,程序員們需要重新考慮開發(fā)應(yīng)用程序的方法。微軟公司的軟件設(shè)計師HerbSutter曾說過,對于那些期望最終用戶簡單的將計算機升級到更快的處理器就可以立即看到軟件程序性能提升的開發(fā)者而言,“免費午餐結(jié)束了”。簡而言之,在相當長的一段時間里,軟件開發(fā)是這樣的,但是現(xiàn)在情況不同了。圖1摩爾定律表明處理器速度不能更快了,所以Intel和AMD等芯片廠商正在轉(zhuǎn)向在單個處理器上集成多個核心的方法。順序執(zhí)行的程序在處理器的速度提升后將得到性能的改善,將電腦升級到更快的CPU意味著一個序列中每個單獨的指令都將運行得更快。為了在多核系統(tǒng)中繼續(xù)獲得性能提升,你需要設(shè)計一個在內(nèi)核間分配任務(wù)的應(yīng)用程序,從本質(zhì)上說來就是開發(fā)并行應(yīng)用程序來取代順序執(zhí)行的程序。2.LabVIEW-一種圖形化數(shù)據(jù)流式編程語言在LabVIEW中開發(fā)應(yīng)用程序的主要優(yōu)勢是這種語言有著直觀、圖形化的特點。在LabVIEW中,用戶解決工程問題就像是在紙上畫框圖一樣。現(xiàn)代多核處理器技術(shù)使得LabVIEW成為一種更適合的編程工具,因為它有著并行化表達和執(zhí)行任務(wù)的能力。LabVIEW的數(shù)據(jù)流特性使得如果連線中存在著分支,或者是框圖中存在并行序列,那么LabVIEW執(zhí)行機構(gòu)會嘗試著并行的執(zhí)行程序。在計算機科學(xué)術(shù)語中,這稱為“潛在的并行化”,因為你不需要根據(jù)并行運行的需要明確地編寫并行代碼,編程語言自己會進行一定程度的并行化。從單核到雙核計算機,理論上講,獲得的性能應(yīng)該是原來的兩倍。但是,與這個極限接近的程度取決于用戶應(yīng)用程序運行的并行化程度。LabVIEW程序員們可以很方便的以并行方式來表示他們的解決方案。對于普通的LabVIEW應(yīng)用程序而言,如果不考慮多核心編程技術(shù),在不改寫代碼的情況下,與最初的程序相比,可以獲得25%到35%的性能提升,這都是緣于普通LabVIEW程序所具有的并行特性。圖2是一個簡單的應(yīng)用程序的例子。其中,LabVIEW代碼中的分支簡化了兩個分析任務(wù)——一個濾波器操作和一個快速傅立葉變換(FFT),使它們可以在雙核機器上并行執(zhí)行。在圖表中沒有顯示的性能測試代碼,它首先在單核模式下(關(guān)掉其中的一個核)運行“forloop”一次,然后在雙核的模式下運行。因為這兩項任務(wù)都是計算量很高的,利用任務(wù)并行化獲得的性能改進為原來的1.8倍。圖2典型的LabVIEW應(yīng)用程序,它展示了數(shù)據(jù)流編程所具有的與生俱來的并行特性基于文本的編程語言如C語言等,在代碼中利用特殊標記來表示并行化代碼,創(chuàng)建并行任務(wù)(也就是創(chuàng)建獨立的線程)。管理這些多線程的應(yīng)用程序?qū)⑹且粋€挑戰(zhàn)。在C語言中,用戶必須使用鎖操作、互斥量、原子操作和其他高級編程技術(shù)來管理同步。當多線程變得難于跟蹤調(diào)試,通常的編程缺陷便出現(xiàn)了,如下所示:?由于線程太多而導(dǎo)致效率低下。?死鎖—線程一直在等待某些而不能進行處理。?競爭狀況—代碼運行的時序沒有被正確管理,在需要數(shù)據(jù)時,數(shù)據(jù)不是沒有準備好就是已經(jīng)被覆蓋掉了。
?存儲器沖突—與代碼中存儲器管理相關(guān)的問題。由于使用C語言進行開發(fā)面臨的這些挑戰(zhàn),LabVIEW程序員們可以獲得比以往更高的效率。3.LabVIEW是利用實時SMP支持,處于“MulticoreReady”軟件層的最上層Intel公司定義了用戶需要評估的四個軟件層次來確定多核系統(tǒng)的可用程度。如果所用的應(yīng)用程序庫和設(shè)備驅(qū)動不是為多核而設(shè)計的,或者操作系統(tǒng)不能夠在多個核心上進行負載均衡,那么并行程序在多核心系統(tǒng)上并不會運行得更快。圖3“MulticoreReady”的軟件層次描述設(shè)備驅(qū)動軟件層的一個例子就是NI-DAQmx驅(qū)動軟件。傳統(tǒng)的NI-DAQ是“線程安全”的,也就是說在一個NI-DAQ函數(shù)被調(diào)用時,整個庫函數(shù)會阻塞其他線程的調(diào)用。從第一感覺看來,這是非常有邏輯性的,因為NI-DAQ是用來控制硬件的,而硬件通常被認為是獨占的資源。NI-DAQmx是改進設(shè)計過的新型DAQ驅(qū)動程序是可重入的,這意味著多個DAQ任務(wù)可以以一種真正并行的方式運行而不再會阻塞線程。利用這種方法,驅(qū)動程序可以在同一個設(shè)備上運行多個獨立任務(wù),諸如模擬和數(shù)字輸入/輸出等。操作系統(tǒng),作為軟件層次的底層,許多實時的操作系統(tǒng)(RTOS)廠商現(xiàn)在還不支持在多個處理器核心間進行自動的線程負載均衡。LabVIEW8.5通過對LabVIEW實時模塊進行擴充,為確定性實時系統(tǒng)帶來了臺式機上的自動多線程調(diào)度器,也被稱為對稱多任務(wù)處理(SMP)。4.結(jié)論如果您需要更快的測量速度或者在控制應(yīng)用中需要改進循環(huán)速率,那么請考慮實現(xiàn)并行應(yīng)用程序的方式。LabVIEW8.5為多線程功能添加了更多特性,這種特性在1
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年房屋出租押金條款合同
- 2024年建筑項目施工質(zhì)量控制合同
- 2024年度產(chǎn)品代理銷售合同服務(wù)內(nèi)容
- 2024年技術(shù)咨詢合同標的及其屬性
- 2024年房產(chǎn)交易代理權(quán)協(xié)議
- 2024年房產(chǎn)交易合同公證
- 2024年度銷售代理合同代理區(qū)域及銷售目標
- 2024幕墻工程碳排放交易合同
- 2024年保密期限合同
- DB4114T 196-2023 冬小麥節(jié)水栽培技術(shù)規(guī)程
- 《建筑施工技術(shù)》課后習(xí)題答案(大學(xué)期末復(fù)習(xí)資料)
- 公司環(huán)境行政處罰事件處置預(yù)案
- 廣東開放大學(xué)風(fēng)險投資(本2022春)-練習(xí)4答案
- DB65∕T 3253-2020 建筑消防設(shè)施質(zhì)量檢測評定規(guī)程
- 二年級蘇教版數(shù)學(xué)上冊《7的乘法口訣》教案(公開課三稿)
- (完整PPT)半導(dǎo)體物理與器件物理課件
- ASTM B366 B366M-20 工廠制造的變形鎳和鎳合金配件標準規(guī)范
- JIS G4304-2021 熱軋不銹鋼板材、薄板材和帶材
- 2022年中級經(jīng)濟師-人力資源管理專業(yè)押題模擬試卷3套及答案解析
- 小學(xué)綜合實踐活動《認識校園植物》優(yōu)秀PPT課件
- XRD在薄膜材料研究中應(yīng)用
評論
0/150
提交評論