Visual Studio 提供效能測量和分析工具的選擇。 某些工具,例如 CPU 使用量和記憶體使用量,可以在發行組建上執行,或在偵錯應用程式時執行 (偵錯組建)。 在偵錯會話期間,[診斷工具] 視窗中所顯示的工具 只會執行。 效能剖析器中顯示的工具 在不使用調試器的情況下執行,通常用於發行版本的組建,您可在選擇停止和收集數據後分析結果(後期分析用途)。
效能分析工具和調試程式整合的診斷工具提供不同的資訊和體驗。 使用診斷工具時,調試程式會顯示變數值,並可讓您使用斷點。
性能分析工具中的發行版本效能數值是最準確且最精確的。 這些工具可讓您獲得更接近終端用戶體驗的結果。 一般而言,這是使用分析工具的慣用方法。 不過,在某些情況下,在偵錯版中使用偵錯器可能有助於縮小效能問題的範圍,特別是如果您想要使用偵錯器的功能,例如斷點和程式碼逐步執行。
若要協助您決定在發行版本或偵錯版本中使用哪種剖析工具,請考慮下列事項:
- 發行組建提供優化,例如內嵌函數調用和常數、剪除未使用的程式代碼路徑,以及以調試程式無法使用的方式儲存變數。 偵錯組建中的效能數位較不精確,因為偵錯組建缺少這些優化。
- 除了發行組建和偵錯組建之間的差異之外,調試程式本身也會變更效能時間,因為其會執行攔截例外狀況和模組載入事件等必要調試程序作業。
- 針對 CPU 密集呼叫所造成的效能問題,發行和偵錯組建之間可能會有相當大的效能差異。 請檢查版本組建中是否有 CPU 效能問題。
- 外部效能問題,例如檔案 I/O 或網路回應性問題,在發行組建或偵錯組建中看起來並無太大差異。
- 如果問題只發生於偵錯組建,您可能不需要使用發行組建執行工具。
- 某些工具,例如 .NET 物件配置工具,僅適用於效能分析工具(非調試程式案例)。
收集發行版本的性能分析數據
若要收集發行組建的效能數據,請執行效能分析工具工具。
在 Visual Studio 中開啟專案時,將方案組態設定為 [Release],然後選取 [本機 Windows 調試程式] [或 本機電腦] 作為部署目標。
選取 偵錯>效能分析工具,或按 Alt+F2。
在 [診斷工具啟動] 頁面上,選取一或多個要執行的工具。 只會顯示適用於項目類型、作業系統和程式設計語言的工具。 選取 顯示所有工具 以查看此診斷會話已停用的工具。
若要啟動診斷工作階段,請選擇 [開始]。
工作階段正在執行時,某些工具會在診斷工具頁面上顯示即時數據的圖表,而且可能會顯示暫停和繼續數據收集的選項。
若要結束診斷工作階段,請選取 [停止收集] 。
分析的數據會出現在 報表 頁面上。
如需可用於發行組建的工具,以及如何分析報告的詳細資訊,請參閱:
- 使用 CPU 分析工具來分析效能
- 分析記憶體使用量
- 分析 .NET 程式代碼的記憶體使用量
- 分析儀器數據
- 分析 .NET 計數器
- 分析 .NET 異步程式代碼的效能
- 分析資料庫效能
- 檢視事件
- 分析 GPU 使用量
注意
使用重新啟動程式略過啟動頁面,並利用 Alt+F2 自動以先前設定執行,或點選 [偵錯] > [效能分析器]。
(選擇性)儲存報表,稍後您可以從 [診斷工具] 啟動頁面上的 [最近開啟的會話] 清單中開啟報表。
在偵錯時收集分析數據
當您在 Visual Studio 中選取 [偵錯]>[開始偵錯]來開始偵錯時,或按 F5,預設會顯示 [診斷工具] 視窗。 若要手動開啟它,請選擇 [偵錯]>Windows>[顯示診斷工具]。 [診斷工具] 視窗會顯示事件、進程記憶體、CPU 使用量和 .NET 計數器的相關信息。
- 使用工具列中的 設定 圖示來選取是否要檢視 CPU 使用量、記憶體使用量,或 .NET 計數器。
當您在 Visual Studio 中選取 [偵錯]>[開始偵錯]來開始偵錯時,或按 F5,預設會顯示 [診斷工具] 視窗。 若要手動開啟它,請選擇 [偵錯]>Windows>[顯示診斷工具]。 [診斷工具] 視窗會顯示事件、進程記憶體和 CPU 使用量的相關信息。
- 使用工具列中的 設定 圖示來選取是否要檢視 CPU 使用量、記憶體使用量,或 UI 分析。
在 [設定] 下拉式清單中選取 [設定],以開啟 [診斷工具屬性頁],並提供更多選項。
如果您執行 Visual Studio Enterprise,您可以移至 Tools>Options>IntelliTrace來啟用或停用 IntelliTrace。
當您停止偵錯時,診斷會話就會結束。
如需偵錯時可用工具的詳細資訊,請參閱:
- 藉由分析 CPU 使用量 來測量應用程式效能
- 在Visual Studio中測量記憶體使用量
- 分析 .NET 計數器
事件標籤頁
在偵錯會話期間,[診斷工具] 視窗的 [事件] 索引卷標會列出發生的診斷事件。 類別前置詞 斷點、檔案等,讓您能夠快速瀏覽清單中的類別,或跳過您不感興趣的類別。
使用 [篩選] 下拉式清單以篩選事件使其顯示或隱藏,然後選取或清除特定事件類別。
診斷事件篩選診斷事件篩選螢幕快照
使用搜尋方塊在事件清單中尋找特定字串。 以下是搜尋檔名為 且符合三個事件的模型 結果:
使用搜尋方塊在事件清單中尋找特定字串。 以下是搜尋符合四個事件之字串 名稱 的結果:
的螢幕快照
如需詳細資訊,請參閱 搜尋和篩選 [診斷工具] 視窗的 [事件] 索引標籤,。
從命令行收集分析數據
若要從命令行測量效能數據,您可以使用 visual Studio 或 Remote Tools 隨附的 VSDiagnostics.exe。 這適用於在未安裝 Visual Studio 的系統上擷取效能追蹤,或編寫效能追蹤集合的腳本。 如需詳細指示,請參閱 從命令列測量應用程式效能。