【譯】.NET 對象分配工具
隨著 Visual Studio 16.10 的發布,性能分析器又有了一個新的分析引擎,.NET 對象分配工具是第一個加入的工具。這為該工具提供了一些新特性,並顯著提高了 perf 性能。在你的 C# 應用中嘗試一下,看看你可以刪除哪些虛假的分配來加速你的應用!
新變化
.NET 對象分配工具現在支援 Source Link,該工具可以在訪問源文件時下拉源文件。這可以讓您確切地看到分配在哪裡發生,即使它們不在您的程式碼中。
搜索現在有自動完成建議,以幫助您更快找到和挖掘報告。
最後,我們在 Collections 視圖中添加了額外的資訊,以便對 .NET 垃圾收集器(GC)有更多的了解。現在您可以看到為什麼會發生 GC,以及相關的統計資訊,如花費了多長時間、堆大小和收集了多少對象。
讓我們看一些數字
我們花費最多精力的領域之一是提高 .NET 對象分配工具的性能。為此,我們將重點放在該工具執行的兩大任務上:
-
-
- 構建用於查找視圖分配的初始分配模型。
-
-
-
- 構建調用樹,它用於顯示調用樹、函數和回溯視圖。
-
在下面的表格中,您可以看到這個工具在 Visual Studio 的最新版本中運行得更快。
正如你所看到的,我們的速度明顯加快了,這些數據並不是在公平的基礎上完成的,因為新版本做了更多的分析,但仍然比之前的版本快!
這個工具只是開始。我們將這些變化擴展到 Visual Studio 2022 的性能分析器中的其他工具,並對如何節省更多的時間有更多的想法。期待您的分析體驗能更快地完成!
來和我們聊聊吧
我們希望聽到您的回饋。如果您想分享您的回饋或與我們的工程團隊聊聊如何改進這個工具,請填寫微軟的調查問卷。
原文鏈接
//devblogs.microsoft.com/visualstudio/net-object-allocation-tool-performance/