Unity Profile Analyzer工具介紹

你是否需要對比不同版本項目的性能區別?是否想了解某個資源或代碼改動、優化工作、設置變更或Unity版本升級給項目帶來的影響? 本文將介紹Unity Profile Analyzer工具(預覽版)如何在這些方面為你提供幫助。

Unity Profile Analyzer工具介紹


為何開發Profile Analyzer

Unity平臺性能團隊需要在所有Unity支持平臺或Unity版本上,調查各種類型的性能問題。為此,我們需要大量使用原生平臺工具和Unity Profiler性能分析器。

在某次調查中,我們發現很難找到最具代表性的數據幀以供深入研究。為此我們構建了一款工具,它可以聚集性能分析數據中多個幀,並幫助我們定位特定標記的幀,這就是Profile Analyzer,它可以幫助我們更可靠的推斷項目行為的變化。

分析單個數據集

Profile Analyzer的單視圖由Unity Profiler窗口的當前幀數集構成。它分析CPU數據並可視化幀、線程和標記的數量,包括這些數據的最小值、最大值、中位數、平均數和上下四分位數,並提供返回Profiler窗口的鏈接,以找到數據出現的幀。

幀數,線程和標記的時間分佈情況也可以通過直方圖和箱形圖的形式呈現,可視化隨時間變化的行為。

Unity Profile Analyzer工具介紹


數據集對比

在Profile Analyzer單視圖形成統計信息的基礎上,我們可以加載二個不同的數據集到對比視圖中,它們會以二個不同的顏色顯示。

不同數據集的區別會可視化在有序表格中,我們也可以在直方圖和箱形圖看到分佈情況的區別,二個數據集可以顯示代碼或數據變更,項目設置改動及Unity版本升級的前後變化情況。

如下圖所示,Profile Analyzer的單視圖和對比視圖都提供了綜合篩選系統,你可以根據標記、線程、幀數和棧深度限制分析結果。

Unity Profile Analyzer工具介紹


篩選數據

我們可以通過使用Profile Analyzer的篩選功能減少數據集,通過匹配部分名稱、運行線程、特定棧等級來限制使用的標記。

除了根據特定名稱匹配來篩選,我們也可以選擇根據名稱排除某標記組,以去除與統計結果不相關或無法有效反映標記組視圖的標記。我們也可以通過使用窗口頂部的幀控制來選擇出一部分幀。

Profile Analyzer的對比視圖會自動排列二個數據組深度數據,以便讓頂層標記正確對齊。我們也可以使用Auto Right勾選框和Left與Right深度控制功能重寫標記結果。尤其在對比不同版本Unity的數據集時,由於生成的標記會發生變化,該功能會非常實用。

Unity Profile Analyzer工具介紹


工具分享

Profile Analyzer會繼續在Unity內部使用,以監視關鍵系統的性能和優化效果。該工具近期用於Unity紋理加載優化的性能評估,該過程中大型紋理的生成會造成渲染線程停頓。

Profile Analyzer的搜索和篩選功能可以讓我們輕鬆專注於相關的關鍵指標。



分享到:


相關文章: