parallelstudio工具學(xué)習(xí)總結(jié)_第1頁
parallelstudio工具學(xué)習(xí)總結(jié)_第2頁
parallelstudio工具學(xué)習(xí)總結(jié)_第3頁
parallelstudio工具學(xué)習(xí)總結(jié)_第4頁
parallelstudio工具學(xué)習(xí)總結(jié)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Intel@ParallelStudio2011簡(jiǎn)介目錄Intel@ParallelStudio2011簡(jiǎn)介.......................................................................................................11、ParallelStudio并行程序開發(fā)套件的目的:............................................................................22、ParallelStudio并行程序開發(fā)套件的組成:............................................................................23、開發(fā)套件里四個(gè)工具的功能簡(jiǎn)介.............................................................................................33、1英特爾ParallelAdvisor(輔助創(chuàng)建多線程)..............................................................33、2英特爾ParallelComposer(創(chuàng)建器)..........................................................................33、3英特爾ParallelAmplifier(分析器)...........................................................................33、4英特爾ParallelInspector(檢查器)............................................................................34、英特爾ParallelAdvisor的使用方法........................................................................................45、英特爾ParallelComposer的使用方法.....................................................................................66、英特爾ParallelAmplifier的使用方法.....................................................................................77、英特爾ParallelInspector的使用方法......................................................................................91

1、ParallelStudio并行程序開發(fā)套件的目的:旨在為基于MicrosoftVisualStudio的C與C++程序開發(fā)各階段提供簡(jiǎn)單、高效的ParallelStudio工具,提高應(yīng)用程序在英特爾多核處理器上的性能。2、ParallelStudio并行程序開發(fā)套件的組成:由英特爾ParallelAdvisor、英特爾ParallelComposer、英特爾ParallelAmplifier和英特爾ParallelInspector四個(gè)工具的組成(如圖2-1),每一款既可各自獨(dú)立使用,也可一起使用,可快速滿足開發(fā)人員的并行程序開發(fā)需求。圖2-1安裝Intel@ParallelStudio2011所有套件目錄在安裝的過程中,需要注意在Intel@ParallelStudio2011官方網(wǎng)站上申請(qǐng)?jiān)囉?,通過郵件的指定地址下載,然后一鍵安裝就行,默認(rèn)的安裝目錄在C盤。Intel@ParallelStudio2011官方IP地址為:/en-us/articles/intel-parallel-studio-home/圖2-2在visualstudio2010的環(huán)境下工具圖標(biāo)位置安裝后如圖2-2所示,Intel@ParallelStudio2011工具套件會(huì)自動(dòng)的和visualstudio2010結(jié)合,在visualstudio環(huán)境里顯示功能圖標(biāo),也可以在菜單里的工具下顯示。23、開發(fā)套件里四個(gè)工具的功能簡(jiǎn)介3、1英特爾ParallelAdvisor(輔助創(chuàng)建多線程)對(duì)已有的串行程序進(jìn)行分析,輔助改造和設(shè)計(jì)多線程并行程序。主要有兩點(diǎn):1、尋找適合并行程序的點(diǎn);2、提供添加并行程序的向?qū)А?、2英特爾ParallelComposer(創(chuàng)建器)此工具捆綁了“英特爾?C++編譯器、英特爾?線程構(gòu)建模塊”(英特爾?TBB)、“英特爾?集成性能基元”及“英特爾?ParallelDebuggerExtension”。此工具使得TBB能夠更容易的和visualstudio進(jìn)行兼容,提高開發(fā)效率。3、3英特爾ParallelAmplifier(分析器)英特爾?ParallelAmplifier有三種分析類型,旨在讓以不同角度深入了解程序性能。主要有熱點(diǎn)分析、并發(fā)性分析和鎖定和等待,主要運(yùn)用在性能分析上。以下是相關(guān)摘錄。每個(gè)層面的分析都收集了相應(yīng)的信息。具體說明如下。第一類分析,即熱點(diǎn)(Hotspots),是最初級(jí)的分析。運(yùn)行它所需時(shí)間與正常運(yùn)行應(yīng)用程序(無英特爾?ParallelAmplifier)的時(shí)間相同。在執(zhí)行應(yīng)用程序時(shí),英特爾ParallelAmplifier的數(shù)據(jù)收集器將定期采樣。每次采樣時(shí),收集器與操作系統(tǒng)協(xié)作使程序中斷,同時(shí)采集數(shù)據(jù)。它記錄執(zhí)行應(yīng)用程序的各個(gè)CPU核心的指令指針(IP)和調(diào)用棧(保存為O/S數(shù)據(jù)結(jié)構(gòu)的一部分)。一旦應(yīng)用程序執(zhí)行完畢,英特爾ParallelAmplifier獲取全部IP采樣,并使用它們計(jì)算出每個(gè)函數(shù)的運(yùn)行時(shí)間,再用所有調(diào)用棧采樣為整個(gè)程序創(chuàng)建一棵調(diào)用樹。為創(chuàng)建熱點(diǎn)列表和調(diào)用樹,英特爾ParallelAmplifier還會(huì)使用存儲(chǔ)在程序調(diào)試數(shù)據(jù)庫(.pdb文件)中的程序數(shù)據(jù)和指令空間的信息。第二類分析,即并發(fā)性(Concurrency),其工作方式與熱點(diǎn)相似,但收集信息更多。它也記錄應(yīng)用程序各線程在各種狀態(tài)下的數(shù)據(jù),如運(yùn)行、準(zhǔn)備就緒和阻塞。一旦集齊所有采樣,英特爾ParallelAmplifier將對(duì)數(shù)據(jù)進(jìn)行分析,以確定應(yīng)用程序各線程處于活動(dòng)狀態(tài)的時(shí)間的百分比。這叫做并行級(jí)別(ConcurrencyLevel),已分解至每個(gè)函數(shù)。理想情況下,應(yīng)用程序的并行級(jí)別應(yīng)該與系統(tǒng)的處理器數(shù)目一致,即英特爾ParallelAmplifier所謂的完全利用(FullyUtilized)。最后一類分析稱為鎖定和等待(LocksandWaits),是最消耗處理器時(shí)間的一種分析。應(yīng)用程序在被基于鎖定和等待的分析時(shí)可能需要較長(zhǎng)的運(yùn)行時(shí)間,這就是消耗處理器時(shí)間的原因。除收集上述數(shù)據(jù)之外,英特爾ParallelAmplifier還將向已編譯的程序添加指令。這些指令將被置于程序中使用線程和同步API調(diào)用的位置,目的是測(cè)量線程處于非活躍狀態(tài)時(shí)的等待時(shí)間。此計(jì)時(shí)信息與.pdb文件中的符號(hào)信息相結(jié)合,即可創(chuàng)建出應(yīng)用程序等待位置和等待對(duì)象的圖表。鎖和其他可能造成線程等待的結(jié)構(gòu)被稱作同步對(duì)象(SynchronizationObjects)。運(yùn)行此分析后,英特爾ParallelAmplifier將顯示一張同步對(duì)象列表,包括各自等待時(shí)間以及在等待期間應(yīng)用程序的并發(fā)性。3、4英特爾ParallelInspector(檢查器)對(duì)已經(jīng)完成的并行程序進(jìn)行檢查,1、檢查內(nèi)存的泄露和沖突問題;2、檢查數(shù)據(jù)沖突和死鎖問題。3

4、英特爾ParallelAdvisor的使用方法如圖4-1所示,Advisor的所有工具圖標(biāo),第一個(gè)為“開始幫助文檔”,幫助學(xué)習(xí)用的,第二個(gè)為“工作流程”,點(diǎn)擊可打開Advisor應(yīng)用對(duì)話框,其余四個(gè)都會(huì)在Advisor應(yīng)用對(duì)話框里出現(xiàn)(如圖4-2),作為對(duì)串行程序分析用。調(diào)查分析、適應(yīng)性分析(兼容性分析)、正確性分析和報(bào)告總結(jié)。圖4-1Advisor的工具圖標(biāo)圖4-2、Advisor應(yīng)用對(duì)話框首先,單擊surveytarget,運(yùn)行collectsurveydata,對(duì)程序進(jìn)行分析。分析后的結(jié)果如圖4-3所示,其中主要顯示程序運(yùn)行時(shí)的分析結(jié)果,分析可實(shí)現(xiàn)的并行結(jié)果;主要顯示程序運(yùn)行中函數(shù)的調(diào)用關(guān)系、運(yùn)行總時(shí)間、函數(shù)運(yùn)行時(shí)間和相應(yīng)函數(shù)的源代碼位置(雙擊可查看相應(yīng)的源代碼),分析可添加并行程序的位置;主要顯示串行程序并行化方法4的合理性(兼容性、適應(yīng)性);確性,防止出現(xiàn)數(shù)據(jù)沖突等情況。主要顯示串行程序并行化方法的正圖4-3Advisor分析結(jié)果和的情況下,需要重新運(yùn)行一下,獲取注意:在運(yùn)行數(shù)據(jù),即單擊和。附圖4-4為Advisor工具的使用時(shí)的大概流程圖。圖4-4Advisor工具的使用流程圖55、英特爾ParallelComposer的使用方法因特爾ParallelComposer2011是一個(gè)綜合的軟件開發(fā)工具包,包括下面四個(gè)開發(fā)工具單元:英特爾?C++編譯器(Intel?C++Compiler)英特爾?線程構(gòu)建模塊(Intel?ThreadingBuildingBlocks)英特爾?集成性能基元(Intel?IntegratedPerformancePrimitives)英特爾?ParallelDebuggerExtension這四個(gè)工具單元是最重要的單元,因?yàn)樗鼈儏⑴c程序的鏈接和編譯過程,決定了程序在編譯過程中的效率問題,因此使用它們編譯出來的程序,只有在Intel的微處理器上效果才會(huì)更好(Intel公司聲明)。1、英特爾?C++編譯器是Intel公司自己的編譯器,在安裝過程中已經(jīng)安裝好了,使用的方法就是通過Project>IntelParallelComposer2011>UseIntelC++編譯已經(jīng)編寫好的程序即可。2、英特爾?線程構(gòu)建模塊和英特爾?集成性能基元是Intel公司自己的工具庫,通過在源程序中調(diào)用它們的類函數(shù)調(diào)用,在這里就不再詳細(xì)說明。另外注意英特爾?集成性能基元主要應(yīng)用于圖像處理中。3、英特爾?ParallelDebuggerExtension主要是為了VisualStudio2010的調(diào)試和ParallelStudio2011的調(diào)試兼容而添加的可擴(kuò)展的集成圖像用戶口接。它解決了多核多線程編程的調(diào)試問題,發(fā)展的已經(jīng)趨于成熟,一般默認(rèn)使用,不需要特別關(guān)注。TheIntel?ParallelDebuggerExtensionprovidesfullyintegratedgraphicaluserinterfaceextensionoftheMicrosoftVisualStudio*debugger.Itisadebugsolutiontargetedspecificallyatthreadedandmulticorebasedprograms.Itsadvancedfeaturesprovideeasyaccesstothethread-specificpropertiesoftheprogramundertest.6

6、英特爾ParallelAmplifier的使用方法英特爾ParallelAmplifier性能分析器主要目的是對(duì)熱點(diǎn)、并發(fā)性和自鎖等待進(jìn)行分析的,其中支持?jǐn)帱c(diǎn)調(diào)試和比較器,在并行程序的調(diào)試中可以靈活應(yīng)用。如圖6-1所示,可以在菜單欄里工具的下拉菜單上單擊啟動(dòng);也可以在visualstudio環(huán)境下使用工具條快速啟動(dòng)如圖6-2所示。圖6-1Amplifier工具圖標(biāo)圖6-2Amplifier工具條1、創(chuàng)建“分析”項(xiàng)目點(diǎn)擊工具》Intel@ParallelAmplifier2011》AnalyzeAs》Hotspots、ConcurrencyorLocksandWaits(三個(gè)選項(xiàng)可選)。啟動(dòng)熱點(diǎn)分析而且自動(dòng)創(chuàng)建名默認(rèn)為“***hs.ampl”。熱點(diǎn)分析項(xiàng)目,項(xiàng)目2、分析結(jié)果分析結(jié)果如圖6-3所示。如圖6-3熱點(diǎn)分析結(jié)果其中表示獲取分析數(shù)據(jù)的日志;表示分析獲取的數(shù)據(jù)統(tǒng)計(jì),包括程序消耗的時(shí)間、熱點(diǎn)位置和程序運(yùn)行的計(jì)算機(jī)環(huán)境參數(shù)等如圖6-4Summary結(jié)果;和顯示從上到下和從下到上的函數(shù)調(diào)用關(guān)系和運(yùn)行情況。圖6-5是工具使用基本流程圖。7圖6-4Summary結(jié)果圖6-5工具使用基本流程圖87、英特爾ParallelInspector的使用方法Intel?ParallelInspector是一個(gè)串行多線程錯(cuò)誤檢查分析工具,主要用于發(fā)現(xiàn)具有危險(xiǎn)性的內(nèi)存泄露、數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論