日本在线www-日本在线播放一区-日本在线不卡免费视频一区-日本在线不卡视频-成人影院久久久久久影院-成人影院一区二区三区

ABB
關注中國自動化產業發展的先行者!
CAIAC 2025
2025工業安全大會
OICT公益講堂
當前位置:首頁 >> 案例 >> 案例首頁

案例頻道

如何創建及諧調支持多核的LabVIEW x86客戶DLL
  • 企業:美國國家儀器(NI)有限公司     領域:運動控制與伺服系統     行業:礦業    
  • 點擊數:1281     發布時間:2009-05-20 11:39:58
  • 分享到:

  The Challenge:

  對NI LabVIEW軟件自動生成的外部代碼進行最優化,在x86構架下獲得最大性能,進而測量目標系統中DLL性能。

  The Solution:

  在不修改源代碼的條件下,通過Intel C++ 編譯器在單核PC上實現2.5 倍提速,通過編譯器中的各類最優化選項在雙核PC 上實現超過4.5 倍提速。

  "VTune能夠監測許多不同種類的構架事件。VTune調諧助手能夠給出如何更好使用這些事件的建議。"

  本應用包括了兩個組件——用于計算Pi 值的DLL、調用DLL 庫函數的LabVIEW 應用,可將結果顯示在圖形用戶界面中。

  為計算Pi 值,我們采用了近似綜合技術,需要在單個循環中完成數百萬次浮點計算。選擇該范例是因為它是CPU 密集型的,并且是可優化的應用。如下所示為外部代碼的主循環結構,CPU的主要計算量是處理CalcSum 函數。

  for(i=0; i<num_steps; i++)
  {
  sum = CalcSum(i, sum, step);
  }

  我們的目標是通過編譯器中的優化選項以最快速度完成上述計算。

  應用中有4 個函數,均包含于獨立源文件中。我們采用不同優化開關來編譯每個源文件。如圖1 所示。

表1.應用中的函數

  “即插即用”的Intel C++ 編譯器

  我們采用即插即用的Intel C++ 來代替Microsoft 編譯器,它可以輕松地集成到現有Microsoft Visual Studio DLL 工程中。更多關于Intel 編譯器,請訪問intel.com/software。

  默認設置

  測量首先以/O2選項創建應用,許多優化都是在這個層面上進行的。本文在此不討論其細節問題。表2顯示了/O2選項集成的各個優化設置。

表2./O2 選項中集成的最優化列表

  自動向量化

  自動向量化得益于新一代CPU 中集成的復雜指令集。多數現代CPU構架可擴展支持數據操作及多數據計算。擴展包括支持以單一指令實現多重計算(單指令多數據流,或稱SIMD)。Intel 編譯器能夠分析代碼,并通過SIMD 指令顯著提高代碼的效率。

  本范例中,編譯器通過\QT 選項生成適合Core 2 構架的代碼,編譯器報告以下創建時間信息:

  注釋:循環未作向量化處理

  反匯編生成代碼后可看到編譯器插入了SIMD擴展指令集(SSE)。該指令集的使用直接提升了應用的運行性能,代碼運行速度提高了2倍。

  這類優化可應用于目前大多數CPU 上,這里我們在Core 2 處理器上運行,當然您也可以在單核或早期CPU 上應用。

  自動并行化

  因為采用多核PC,我們會更感興趣如何通過\QParallel 選項,讓代碼在兩核上同時運行,以獲得進一步提速。該選項在編譯目標中插入了庫調用。庫調用提供了運行時所需的控制,使應用中的組件得以并行。

  在首次運行中,編譯器并未顯著提高運行性能。通過開啟編譯器的報告功能,可以看到它并未進行優化。

  注釋:循環未作并行化處理,循環無需并行化

  Intel編譯器要對一段代碼進行自動并行化時,首先決定是否有值得進行并行化的代碼部分。在我們的代碼中由一個主循環完成所有工作。編譯器不能確定循環的重復次數,循環計數值只有在運行時得到。于是編譯器采取謹慎選擇,不對循環進行并行化處理。

  我們可以通過在命令行輸入/Qpar-threshold:n 來進行試探優化,這里n 是介于0(總是并行處理)到100(不進行并行處理)的數,這個值決定了試探優化的程度。

  輸入/Qpar-threshold:0 后,編譯器對代碼并行化,并輸出報告:

  注釋:循環已作自動并行化處理

  使用該優化后,程序的運行速度比默認設置下提高了近2 倍。

  其它優化選項

  本范例中,我們關注自動向量化及自動并行化。Intel C++ 編譯器利用一系列其它優化技術,包括高層優化、交叉過程優化、配置向導優化、速度優化、代碼大小優化、快速浮點處理等。

  Intel 編譯器同時支持OpenMP 這個基于pragma 的標準,用于實現應用代碼的并行化。

  測量性能

  本范例中我們采用Win32 API 的定時函數,并將定時計算嵌入外部代碼。計算時間在LabVIEW 應用GUI 中顯示。

  作為備選,我們還可采用LabVIEW的定時工具,或采用外部工具,如Intel VTune 性能分析器。

  VTune能夠監測許多不同種類的構架事件。VTune調諧助手能夠給出如何更好使用這些事件的建議。

  結論

  不同開關的優化結果在表3 中列出。我們在雙核PC 上運行,并通過默認優化(/O2)作為基準來計算提速。

表3.不同優化方式下的速度提高

  在應用自動向量化時可達到2.5倍速,該優化專用于非多核處理器,可用于目前多數CPU。

  在應用自動并行化后可實現接近2 倍的提速。結合兩種優化更可達到4.6 倍。

  以上結果是在不修改源代碼的前提下實現的。盡管我們選擇了模擬應用(計算Pi值),但這類優化技術能夠用于各類實際應用。從Intel編譯器用戶反饋中了解到,使用這些優化方式可顯著提高代碼執行速度。

 

 

熱點新聞

推薦產品

x
  • 在線反饋
1.我有以下需求:



2.詳細的需求:
姓名:
單位:
電話:
郵件:
主站蜘蛛池模板: 欧洲亚洲综合,亚洲欧美综合视频,国产视频分类,欧美亚洲综合在线,亚洲另类第一页,91在线观 | 一区二区三区欧美日韩-一区二区三区欧美-一区二区三区免费在线视频-一区二区三区免费在线观看-久久精品店-久久精品第一页 | 国产成人综合在线观看网站-国产成人综合在线-国产成人综合亚洲亚洲欧美-国产成人综合亚洲动漫在线-国产成人综合亚洲-国产成人综合网在线观看 | 中文字幕第一页亚洲-中文字幕第一页国产-中文字幕第38页永久乱码-中文字幕不卡在线观看-久久久久青草大香线综合精品-久久久久青草 | 天堂视频在线观看免费-天堂视频在线-天堂视频免费-天堂色区-国产精品一区二区欧美视频-国产精品一区二区免费 | 双性人bbwsex-双性花蒂产奶h-双性大奶肉文-双性产奶-国产福利在线观看 极品美女-国产福利在线播放 | 四虎影视永久免费观看网址-四虎影视永久地址www成人污-四虎影视网站-四虎影视网-日韩欧美高清色码-日韩欧美国产免费看清风阁 | 91香蕉导航-91香蕉成人免费高清网站-91香蕉成人-91午夜视频-91午夜精品亚洲一区二区三区-91网址在线观看 | 福利视频欧美一区二区三区-福利视频欧美-福利视频你懂的-福利视频导航网址-福利视频导航网-福利视频导航大全 | 极品白丝-激性欧美激情在线播放16页-激情综合五月天丁香婷婷-激情伊人网-亚洲天堂久久精品成人-亚洲天堂久久精品 | 国产成人精品一区二区视频免费-国产成人精品一区二区视频-国产成人精品一区二区三在线观看-国产成人精品一区二区三在-国产成人精品一区二区三区小说-国产成人精品一区二区三区无码 | 国产久操视频-国产久草视频-国产久热精品-国产久热香蕉在线观看-青青青青娱乐-青青青青在线成人视99 | 甜性涩爱在线播放-甜性涩爱下载-甜性涩爱全集在线观看-甜性涩爱免费下载-国产成人午夜精品免费视频-国产成人无码一区AV在线观看 极品少妇粉嫩小泬啪啪AV-极品少妇粉嫩小泬啪啪小说-极品少妇高潮啪啪AV无码-极品少妇伦理一区二区-极品少妇小泬50PTHEPON-极品夜夜嗨久久精品17c | 久热久热精品在线观看-久青草影院-久青草国产在线视频亚瑟影视-久青草国产在线视频-正在播放黑人杂交派对卧槽-正在播放国产尾随丝袜美女 | 性色做爰片在线观看WW-性夜影院午夜看片-性一交一乱一A片-性一交一乱一A片WWW-性一交一乱一交A片久久-性一交一乱一交A片久久四色 | 在线观看 一区-在线观看 亚洲-在线观看 日韩-在线观看 免费高清视频-久久婷婷国产一区二区三区-久久婷婷国产五月综合色啪最新韩国 | 久久久精品国产sm最大网站-久久久精品国产免大香伊-久久久精品国产免费A片胖妇女-久久久精品久久久久久96-久久久精品久久久久久久久久久-久久久精品久久日韩一区综合 | 色8影院-色5月综合-色5月婷婷-扫黑决战免费完整版高清-骚五月天-骚婷婷 | 天天躁日日躁狠狠躁欧美日韩,亚洲情综合五月天,久久精品国产福利,97高清国语在线看免费观看,丁香五六月婷婷,欧美视频日韩视频 | 性一交一乱一交A片久久四色-性一交一乱一乱A片AP88-性一交一乱一伦一A片-性一交一乱一伦一色一情-性一交一乱一伦一色一情孩交-性一交一乱一伦在线播放 | 欧美性动态图-欧美性精品人妖-欧美性久久-欧美性狂猛AAAAAA-欧美性狂猛bbbbbbxxxx-欧美性类s0x | 好男人天堂网,久久精品国产这里是免费,国产精品成人一区二区,男人天堂网2021,男人的天堂在线观看,丁香六月综合激情 | 莜田优在线观看-尤物最新网址-尤物综合-尤物自拍-久久久久久网址-久久久久久网站 | 欧美日韩国产精品-欧美日韩国产剧情-欧美日韩国产伦理-欧美日韩国产欧美-you ji z z日本人在线观看-you jizz jizz japan日本 | 热久久国产-热99这里只有精品-热99这里有精品综合久久-热99在线观看-国产精品99久久久-国产精品99久久99久久久看片 | 岛国精品在线观看-岛国精品在线-岛国大片在线免费观看-岛国大片在线观看完整版-日本老师xxxx88免费视频-日本久久综合网 | 亚洲第一视频网-亚洲第一色在线-亚洲第一色网站-亚洲第一人黄所-亚洲第一区在线观看-亚洲第一区在线 | 久久就是精品-久久看片网-久久蝌蚪-久久老熟女一区二区三区-久久老司机波多野结衣-久久乐国产综合亚洲精品 | 五月天婷婷视频,九九爱这里只有精品,热和尚三区四区,善良的嫂子3在线播放,久久久久久久久久久久久久,热er99久久6国产精品免费 | 亚洲综合在线视频-亚洲综合在线观看视频-亚洲综合视频网-亚洲综合色秘密影院秘密影院-日本三区四区免费高清不卡 | 又大又粗好舒服好爽视频-又大又白g奶-又粗又长又爽又大硬又黄-又粗又长又黄又爽视频-久久久久中文-久久久久这里只有精品 | 国产三级在线观看视小说-国产三级在线观看视频不卡-国产三级在线观看视频-国产三级在线观看免费-西瓜视频网页版-西瓜视频全部免费观看大全 | 亚洲人成电影青青在线播放-亚洲人成www在线播放-亚洲人成a在线网站-亚洲人av高清无码-久操久-久操-9c.lu | 欧美人成在线视频-欧美人成一本免费观看视频-欧美人xxxxxbbbb-欧美区在线-在线不卡免费视频-在线播放周妍希国产精品 | 牛牛精品专区在线-牛牛超碰 国产-牛和人交videos欧美-妞干网手机免费视频-99精品视频在线观看免费-99精品视频在线观看re | 久久夜视频-久久夜色视频-久久夜色精品国产欧美-久久夜色精品国产噜噜小说-久久夜色精品国产-久久亚洲这里只有精品18 | 九九香蕉-九九线精品视频-九九五月天-九九天天影视-天天干b-天天干2018 | 第一区免费在线观看-无码国产精品一区二区免费网曝-AV熟妇导航网-日韩欧美一区二区三区在线观看 -欧美乱人伦视频-啪啪视频一区 | 日本久久久久久久,97久久精品一区二区三区,狠狠色噜噜狠狠狠狠97,日日干综合,五月天婷婷在线观看高清,九色福利视频 | jjzz日本女人-jjzz网站-jjzz亚洲亚洲女人-jjzz在线观看-jlzzjizz-jlzzjlzz亚洲日本 | 国产精品亚洲日韩欧美色窝窝-国产精品亚洲日韩欧美色窝窝色-国产精品亚洲色婷婷-国产精品亚洲色婷婷99久久精品-国产精品亚洲色婷婷久久99精品-国产精品亚洲色图在线观看 |