国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于LabVIEW的多核系統(tǒng)編程技術

發(fā)布時間:2010-10-7 21:26    發(fā)布者:eetech
因為NI LabVIEW是數據流編程語言,開發(fā)者們可以編寫并行的應用程序,這些應用程序可以直接映射到并行的硬件(如多核心處理器和FPGA等)上以獲得最優(yōu)異的性能。這篇白皮書討論了什么是數據流編程以及為什么說NI LabVIEW是多核系統(tǒng)編程的首選。

免費午餐結束了

近幾年來,處理器的速度遭遇到了瓶頸。摩爾定律表明,每隔18"24個月芯片中晶體管的數量就會增加一倍。這在過去的40年里始終是適用的,但是芯片性能卻不再保持線性增加了。過去,芯片生產廠商通過增加處理器的時鐘速度來提高芯片的性能,如從100"200MHz,再到最近的數GHz的范圍。

但是在今天,由于功耗和散熱的限制,通過提高時鐘速度來增加性能的方法行不通了。芯片廠商開始轉向另一種全新的芯片構架,就是在單芯片上集成多個處理器內核。相對于單核處理器,程序員們可以使用多核處理器完成更多的任務。為了充分利用多核處理器,程序員們需要重新考慮開發(fā)應用程序的方法。微軟公司的軟件設計師Herb Sutter曾說過,對于那些期望最終用戶簡單的將計算機升級到更快的處理器就可以立即看到軟件程序性能提升的開發(fā)者而言,“免費午餐結束了”。簡而言之,在相當長的一段時間里,軟件開發(fā)是這樣的,但是現在情況不同了。


圖1:摩爾定律表明處理器速度不能更快了,所以Intel和AMD等芯片廠商正在轉向在單個處理器上集成多個核心的方法。

順序執(zhí)行的程序在處理器的速度提升后將得到性能的改善,將電腦升級到更快的CPU意味著一個序列中每個單獨的指令都將運行得更快。為了在多核系統(tǒng)中繼續(xù)獲得性能提升,你需要設計一個在內核間分配任務的應用程序,從本質上說來就是開發(fā)并行應用程序來取代順序執(zhí)行的程序。

LabVIEW——一種圖形化數據流式編程語言

在LabVIEW中開發(fā)應用程序的主要優(yōu)勢是這種語言有著直觀、圖形化的特點。在LabVIEW中,用戶解決工程問題就像是在紙上畫框圖一樣。現代多核處理器技術使得LabVIEW成為一種更適合的編程工具,因為它有著并行化表達和執(zhí)行任務的能力。

LabVIEW的數據流特性使得如果連線中存在著分支,或者是框圖中存在并行序列,那么LabVIEW執(zhí)行機構會嘗試著并行的執(zhí)行程序。在計算機科學術語中,這稱為“潛在的并行化”,因為你不需要根據并行運行的需要明確地編寫并行代碼,編程語言自己會進行一定程度的并行化。

從單核到雙核計算機,理論上講,獲得的性能應該是原來的兩倍。但是,與這個極限接近的程度取決于用戶應用程序運行的并行化程度。LabVIEW程序員們可以很方便的以并行方式來表示他們的解決方案。對于普通的LabVIEW應用程序而言,如果不考慮多核心編程技術,在不改寫代碼的情況下,與最初的程序相比,可以獲得25%到35%的性能提升,這都是緣于普通LabVIEW程序所具有的并行特性。

圖2是一個簡單的應用程序的例子。其中,LabVIEW代碼中的分支簡化了兩個分析任務——一個濾波器操作和一個快速傅立葉變換(FFT),使它們可以在雙核機器上并行執(zhí)行。在圖表中沒有顯示的性能測試代碼,它首先在單核模式下(關掉其中的一個核)運行“for loop”一次,然后在雙核的模式下運行。因為這兩項任務都是計算量很高的,利用任務并行化獲得的性能改進為原來的1.8倍。



圖2:典型的LabVIEW應用程序,它展示了數據流編程所具有的與生俱來的并行特性。

基于文本的編程語言如C語言等,在代碼中利用特殊標記來表示并行化代碼,創(chuàng)建并行任務(也就是創(chuàng)建獨立的線程)。管理這些多線程的應用程序將是一個挑戰(zhàn)。

在C語言中,用戶必須使用鎖操作、互斥量、原子操作和其他高級編程技術來管理同步。當多線程變得難于跟蹤調試,通常的編程缺陷便出現了,如下所示:

1. 由于線程太多而導致效率低下。

2. 死鎖——線程一直在等待某些而不能進行處理。

3. 競爭狀況- 代碼運行的時序沒有被正確管理,在需要數據時,數據不是沒有準備好就是已經被覆蓋掉了。

4. 存儲器沖突——與代碼中存儲器管理相關的問題。

由于使用C語言進行開發(fā)面臨的這些挑戰(zhàn),LabVIEW程序員們可以獲得比以往更高的效率。

LabVIEW是利用實時SMP支持,處于“Multicore Ready”軟件層的最上層Intel公司定義了用戶需要評估的四個軟件層次來確定多核系統(tǒng)的可用程度。如果所用的應用程序庫和設備驅動不是為多核而設計的,或者操作系統(tǒng)不能夠在多個核心上進行負載均衡,那么并行程序在多核心系統(tǒng)上并不會運行得更快。
本文地址:http://www.qingdxww.cn/thread-30639-1-1.html     【打印本頁】

本站部分文章為轉載或網友發(fā)布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 利用模擬開發(fā)工具生態(tài)系統(tǒng)進行安全電路設計
  • 深度體驗Microchip自動輔助駕駛應用方案——2025巡展開啟報名!
  • 更佳設計的解決方案——Microchip模擬開發(fā)生態(tài)系統(tǒng)
  • 我們是Microchip
  • 貿澤電子(Mouser)專區(qū)

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产福利在线观看永久视频 | 欧美黄色片免费观看 | 在线播放亚洲 | 国产精品无卡无在线播放 | va视频在线| 停停色| 欧美高清一区二区三区 | 男人性天堂 | 麻豆精品传媒一二三区在线视频 | 久久久免费精品视频 | 青青青视频免费观看 | 亚洲日韩精品欧美一区二区 | 啪啪一级视频 | 久久免费视频观看 | 日韩制服在线 | 日韩成人综合网 | 中文字幕乱码人成乱码在线视频 | 绿巨人香蕉草莓丝瓜茄子番茄在线 | 日韩 国产 在线 | 麻豆精品久久久一区二区 | 一区二区三区日韩免费播放 | 一级做a爰性色毛片免费 | 日韩一级欧美一级在线观看 | 日产精品一卡2卡三卡4乱码久久 | 免费黄片毛片 | 免费三片在线观看网站 | 国产福利不卡一区二区三区 | 三级网站在线看 | 日本免费一区二区三区中文 | 四虎永久影院 | 日韩欧美一区二区三区在线 | 日本欧美一二三区色视频 | 亚洲欧美在线观看视频 | 久久国产精品一国产精品金尊 | 久久亚洲精品国产精品婷婷 | 国产女在线 | 国内精品七七久久影院 | 亚洲小色网| 日韩高清一区二区 | 国产a自拍 | 国产成人在线视频网站 |