<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 新品快遞 > NI LabVIEW助力多核設(shè)計(jì)與開發(fā)

          NI LabVIEW助力多核設(shè)計(jì)與開發(fā)

          作者: 時間:2008-10-16 來源:電子產(chǎn)品世界 收藏

            20多年來,全球各地的工程師借助 軟件平臺構(gòu)建了無數(shù)高性能設(shè)計(jì)、控制和測試系統(tǒng),而今,這個基于圖形化的設(shè)計(jì)工具又在多核領(lǐng)域發(fā)力,幫助工程師應(yīng)對多核設(shè)計(jì)的挑戰(zhàn)。

                     
           
            在高交會電子展現(xiàn)場,工程師給記者介紹并現(xiàn)場演示了 在多核開發(fā)方面的獨(dú)有優(yōu)勢。“在多核開發(fā)方面,有獨(dú)有的優(yōu)勢,可以說,LabVIEW就是為多核開發(fā)而出現(xiàn)的。”NI的現(xiàn)場工程師介紹說,“多核開發(fā)一個挑戰(zhàn)是要解決處理任務(wù)對多核的分配問題,而利用軟件編程來完成,這將非常麻煩,比如用C++寫一個多的程序,程序員必須要非常熟悉 C++,了解如何將C++程序分成多個和并在各個間進(jìn)行任務(wù)調(diào)度,此外還要了解 Windows 多線程的機(jī)制,熟悉 Windows API 的調(diào)用方法和MFC 的架構(gòu)等等。在 C++ 上調(diào)試多線程程序,更是被很多程序員視為噩夢。但是對LabVIEW而言,這非常輕松,作為一種并行結(jié)構(gòu)的編程語言,LabVIEW能將多個并列的程序分支自動分配成多個線程并分派到各個處理核上,讓一些計(jì)算量較大的數(shù)學(xué)運(yùn)算或信號處理應(yīng)用得以提高運(yùn)行效率,并獲取最佳性能,在這個圖形化設(shè)計(jì)工具上,只要你輕輕點(diǎn)擊圖形框,系統(tǒng)就可以自動或手動將任務(wù)分配到多核中的上,可以說,圖形化開發(fā)平臺提供了一個理想的多核編程環(huán)境。”

            最新發(fā)布LabVIEW 8.6平臺擴(kuò)展了內(nèi)嵌的多線程技術(shù),在新版軟件中通過多核優(yōu)化特性提供超級計(jì)算性能,幫助工程師處理更大容量的測量數(shù)據(jù),滿足高級控制應(yīng)用的要求,并提高測試系統(tǒng)的吞吐量。在全新的多核特性下,測試工程師通過新版LabVIEW的調(diào)制工具包開發(fā)測試無線設(shè)備的應(yīng)用,其效率可提高4倍之多!

          本文引用地址:http://www.ex-cimer.com/article/88740.htm

            他現(xiàn)場演示了一個雙核應(yīng)用開發(fā),并指出LabVIEW可以自動處理MatLAB語句,實(shí)現(xiàn)混合編程,發(fā)揮MatLAB強(qiáng)大的科學(xué)計(jì)算能力!他指出,下圖中的樂高機(jī)器人檢測平臺就是利用LabVIEW在短時間內(nèi)在多核基礎(chǔ)上開發(fā)而成!
              



          關(guān)鍵詞: NI LabVIEW 線程 處理器

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();