您可以使用 Android GPU Inspector (AGI) 剖析 Android 應用程式的特定影格,然後使用這個影格執行應用程式的 GPU 用量深入分析。與單獨進行系統剖析相比,這些剖析資料可讓您更深入瞭解應用程式的 GPU 用量。
使用 AGI 進行影格剖析作業的第一步是收集追蹤記錄和其他效能資料,然後評估並顯示資料以供分析。
可用的影格剖析資料包括:
Vulkan API 呼叫
影格緩衝區內容
轉譯的網格繪製呼叫
指令的 RAM 和 GPU 記憶體值
轉譯事件的 GPU 效能資料
管道資料
轉譯狀態資料
紋理和著色器資源
開始使用
AGI 快速入門導覽課程說明如何設定 AGI、擷取影格設定檔資料,然後開啟產生的追蹤檔。下一節將詳細說明設定選項。
剖析選項
本節說明擷取影格設定檔時,可用的主要選項。
圖形 API 選項
Graphics API 選項會指出應用程式使用的圖形 API。選項可在「Capture System Profile」對話方塊的「Type」清單中。可用選項如下:
- Vulkan:適用於直接使用 Vulkan API 的應用程式。
- OpenGL on ANGLE:適用於採用 OpenGL ES 的應用程式。
AGI 會直接追蹤 Vulkan 指令。但是,如果您的應用程式使用 OpenGL ES,AGI 就會使用自訂的 ANGLE 版本將指令轉譯為 Vulkan 指令,接著再追蹤應用程式。
其他引數
「Additional Arguments」欄位是用於將其他標記傳送至 ADB am start-activity
指令,後者會在剖析期間傳送至您的裝置以啟動應用程式。詳情請參閱 ADB 指令。
開始和時間長度選項
在「Start and Duration」(開始與時間長度) 區段中,指定 AGI 擷取影格並剖析的方式。可用的選項如下:
開始:AGI 會擷取應用程式啟動到第一個轉譯影格結束時的所有指令。
手動:按下追蹤對話方塊中的按鈕,手動擷取影格。
時間:AGI 會在指定秒數後自動擷取影格。
影格:AGI 會自動擷取指定的影格。
追蹤選項
「追蹤選項」區段包含可設定追蹤標記的設定。以下是可用的設定:
停用緩衝區:擷取資料時,停用裝置的記憶體緩衝功能。這個選項有助於對應用程式當機問題進行偵錯,因為這樣可確保所有追蹤資料均已在當機前序列化。不過,這在剖析期間會稍微增加 AGI 的負擔。
包含不支援的擴充功能:加入裝置 AGI 不支援的擴充功能。如果您的應用程式使用 AGI 不支援的擴充功能,您可能會在重播追蹤記錄時遇到不想要的行為,包括輕微的錯誤或當機。瀏覽支援的擴充功能清單。
清除套件資料:使用
pm clear
ADB 指令,要求裝置在啟動前清除應用程式的使用者資料。
輸出設定
「Output」區段包含追蹤檔案儲存空間的設定,例如:
指定要儲存追蹤檔的目錄。
修改系統自動產生的追蹤檔檔案名稱。
查看結果
如果您開啟含有影格剖析資料的追蹤檔,AGI 就會在影格分析器 UI 中顯示資料進行分析。
影格分析器是一種 AGI 元件,可管理用於剖析個別影格的 UI 和檢測作業。影格分析器會在下列 UI 元素中顯示資料:
「Commands」(指令)窗格:Vulkan API 呼叫。
Framebuffer 窗格:Framebuffer 內容。
「Geometry」(幾何圖形) 窗格:網格繪圖呼叫的算繪。
記憶體窗格:指令的 RAM 和 GPU 記憶體值。
「Performance」(效能)窗格:轉譯事件的 GPU 效能資料。
「Pipeline」窗格:管道內容。
著色器窗格:著色器內容。
「State」(狀態)窗格:已提交指令的轉譯狀態。
「Textures」(紋理) 窗格:與指令相關聯的紋理資源清單。
「Texture」(紋理) 窗格:所選紋理資源的內容。
「報表」窗格:剖析錯誤清單。
分析結果
以下主題說明如何使用 AGI 分析影格剖析資料: