1.什麼是VTune?
Vtune可視化性能分析器(Intel VTune Performance Analyzer)是一個用於分析和優化程序性能的工具,作爲Intel爲衆多開發者們提供的專門針對尋找軟硬件性能瓶頸的一款分析工具,它能幫助你確定程序的熱點(hotspot),幫助你找到導致性能不理想的原因,從而讓你能據此對程序進行優化。
- 概括起來Vtune性能分析器能通過以下的手段幫助你發現和定位程序中的性能問題:
- 從當前系統中收集性能數據
- 從系統到源代碼不同的層次上,以不同的互動形式來組織和展示數據
- 發現潛在的性能問題,並提出改進措施。
2.VTune主要包括三個小工具:
(1) Performance Analyzer:性能分析,找到軟件性能比較熱的部分,一般也就是性能瓶頸的關鍵點。
(2) Intel Threading Checker:用於查找線程錯誤, 能夠檢測資源競爭、線程死鎖等問題
(3) Intel Threading Profiler:線程性能檢測工具,多線程可能存在負載比平衡, 同步開銷過大等線程相關的性能問題,該工具可以幫你發現每一個線程每一時刻的狀態。
3.工作模式:
本地模式是被分析的程序和VTune同時工作在同一臺機器上
遠程模式是指程序在一臺機器上,VTune裝在另一臺機器上
4.Vtune性能分析器顯示的性能數據的幾種形式:
(1) 採樣:
以圖形化方式顯示程序執行的指令地址直方圖,幫助確定代碼中的性能瓶頸。採樣數據採集完畢之後,可以按進程、線程、模塊、函數或指令地址進行查看。採樣只需極低的性能開銷,並且不需要修改代碼。通過採樣圖,可以方便地瞭解到哪些代碼是處於活動密集區,如圖中是按模塊劃分,最長的紫紅色區域所對應的代碼模塊,代表的就是HotSpot,在開發中需要着重優化。
(2) 調用圖:
調用圖包含以下信息:
- 函數被調用次數及調用它的函數
- 在每個函數或方法上耗費的時間
- 函數耗費在阻塞或等待上的時間
- 經過調用層次結構的關鍵路徑
- 耗費時間佔總時間n%以上的函數,其中n 由用戶指定。
(3) 計數器監視器:
計數器監視器"可實時查看應用程序的性能。可監視200個以上可用操作系統計數器中的任何一個。用戶可創建自定義的性能監視器,來監視軟、硬件性能。計數信息包括:重定向網絡錯誤率,內存佔用量,上下文切換率,CPU 時間等。
3.如何使用Vtune(TM)性能分析器優化應用程序?
使用Vtune(TM)性能分析器優化應用程序,首先必須要建立一個工程(project)。所謂工程就是一個包含有與應用程序相關的所有優化信息。在一個工程內,用戶可以創建一個活動(Activity)。所謂的活動包含有用戶的應用程序的信息和一個或多個數據收集器(data collectors)的配置信息。一旦你運行一個活動,Vtune性能分析器將啓動應用程序和數據收集器,開始自動收集相關數據信息。
4.支持的平臺以及安裝注意事項:
平臺:windows os, mac os, linux os
注意事項:在安裝較新版本之前,無需卸載VTune Amplifier的先前版本或更新。但是,如果在安裝較新版本之前未刪除較舊的更新,則屬於同一主要版本的所有產品組件將替換爲每個主要版本更新的最新版本,也就是說新版本將安裝在舊版本旁邊,複製通用文件,文檔,示例和產品組件。
5.下載Only Intel® VTune™ Amplifier
https://software.intel.com/en-us/vtune/choose-download
6.使用GUI界面安裝
sudo apt-get install libgtk-3-0 libasound2 libxss1 libnss3
tar -xzf vtune_amplifier_2019_update4.tar.gz
cd vtune_amplifier_2019_update4/
sudo ./install_GUI.sh
注意:使用root權限安裝時,默認路徑爲:/opt/intel/vtune_amplifier_version 使用用戶權限安裝時,默認路徑爲: /home/<user>/vtune_amplifier_version , 上面使用GUI界面來安裝VTune
一路點擊next
執行到上圖界面的時候,點擊Custonize...可以查看和自定義安裝路徑
然後一路install就可以,進度條爲百分百的時候,點擊Finish。
7.驗證安裝的自檢腳本
該腳本在具有可靠熱點的樣本上運行多個代表性分析類型。腳本完成後,它會生成一個日誌文件,並對檢查的成功或失敗進行診斷。推出的分析類型包括:
-
軟件採樣和跟蹤收集(用戶模式採樣模式或線程中的熱點)
-
基於核心事件的採樣採集(基於硬件事件的採樣模式中的熱點,包括和不包含堆棧)
-
微體系結構探索分析
-
使用非核心事件進行內存訪問分析
cd /opt/intel/vtune_amplifier_2019.4.0.597835/bin64
sudo ./amplxe-self-checker.sh
8.配置VTune Amplifier環境
終端執行下面命令:
source /opt/intel/vtune_amplifier_2019.4.0.597835/amplxe-vars.sh
也可以在用戶環境變量中配置:
sudo vim ~/.bashrc #當前用戶
添加環境變量:
source /opt/intel/vtune_amplifier_2019.4.0.597835/amplxe-vars.sh
配置完成後打開新終端,即可看到:
安裝完畢!!