微软发布 .NET 8 开源开发平台:引入 PGO、AVX-512 支持,性能提升 20%
11 月 15 日消息,微軟今日舉行了“.NET Conf 2023”開發者大會,并推出了最新一代 .NET 8 開源開發平臺。
對企業來說特別重要的是,.NET 8 是一個長期支持 (LTS) 版本,這意味著它將獲得三年的支持和補丁,而標準期限支持 (STS) 版本則是 18 個月。對于開發人員來說,特別重要的是 .NET 團隊正在向期待已久的原生提前編譯(NativeAOT)邁進 。
據介紹,.NET 8 不僅包含許多性能改進,還增加了一個新的代碼生成器 —— 動態配置文件引導優化(PGO),它可以根據應用優化代碼。微軟表示這將使基于.NET 8 的應用性能提升至高20%。
此外,新增的 AVX-512 指令集支持也可以對 512 位數據向量進行并行運算,在 .NET 8 中受支持和使用,從而允許在更短的時間內進行更多的數據處理。
微軟還表示,基元類型現在實現了新的格式化和可解析接口,使它們能夠直接格式化和解析為 UTF-8,而不會產生任何轉碼開銷。
.NET 8 帶來了數千種性能改進,涵蓋了整個堆棧。默認情況下會啟用一個新的代碼生成器,稱為動態配置文件引導優化(PGO),它會根據實際使用情況優化您的代碼,從而為應用程序提高多達 20% 性能。
現在支持的 AVX-512 指令集使您能夠在 512 位數據向量上執行并行操作,這意味著您可以在更短的時間內處理更多的數據。基本類型(數值和更多)現在實現了一個新的可格式化和可解析接口,使其能夠直接以 UTF-8 格式進行格式化和解析,而無需任何轉碼開銷。
微軟表示,TechEmpower 基準測試顯示,在 JSON API 場景中,.NET 8 的性能比.NET 7 提高了 18%,而在 Fortunes 場景中,.NET 8 的性能比.NET 7 提高了 24%。
微軟還在努力推動將.NET 8 用于基于 AI 的應用程序。
集成 Tensor 基元。隨著啟用 AI 的應用程序的興起,出現了新的工具和 SDK。我們與許多內部和外部合作伙伴(如 Azure OpenAI、Azure Cognitive Search、Milvus、Qdrant 和 Microsoft Teams)合作,確保.NET 開發人員通過各自的 SDK 輕松訪問各種 AI 模型、服務和平臺。
此外,開源的語義內核 SDK 簡化了將這些 AI 組件集成到新應用程序和現有應用程序中的過程,幫助您提供創新的用戶體驗。
.NET 8 通過推進 NativeAOT 來增強可持續計算,以減少內存使用并實現即時應用程序啟動。微軟今天強調了 AOT 的功能,包括:
-
它將應用程序編譯為使用更少內存的本機代碼并立即啟動
-
無需等待 JIT(實時)編譯器在運行時編譯代碼
-
無需部署 JIT 編譯器和 IL 代碼
-
AOT 應用僅部署應用所需的代碼
-
現在,應用程序可以在不允許使用 JIT 編譯器的受限環境中運行
對于在.NET 8 上開發并在 Linux 和 Windows 平臺上運行的 AOT(提前編譯)應用也將得到性能提升,這意味著開發人員不必使用 JIT(即時編譯)編譯器來在運行時編譯他們的應用程序。
注意到,除了.NET 8 之外,微軟還發布了.NET Aspire 首個版本。這是一個專門為制作基于云的應用程序而設計的堆棧,或者說是一個用于構建彈性、可觀察和可配置的云原生應用程序的堆棧。
.NET Aspire 附帶了一組針對云原生開發增強的精選組件,默認情況下包括遙測、復原、配置和運行狀況檢查等等。
在云原生的容器方面,.NET 8 通過簡化應用程序的打包和使用默認的非 root 用戶配置增強安全性來簡化容器化。它還提供更小的映像大小以加快部署速度,并提供可選的 Dirstroless Ubuntu 映像以增強安全性,以及多功能架構支持。
微軟還表示,它使用簡單易用的本地開發人員體驗,同時也足夠復雜以創建基于云的應用程序。
此外,借助 C#12 ,你現在可以用簡單而優雅的語法在任何類和結構中創建主要構造函數,不再需要樣板代碼來初始化字段和屬性。使用簡潔而富有表現力的語法創建數組、spans 和其他集合類型。對 lambda 表達式中的參數使用新的默認值。不再需要重載或 null 檢查來處理可選參數。您甚至可以使用 using alias 指令為任何類型設置別名,而不僅僅是命名類型!
C# 12 中的新增功能指南解釋了版本 12 中的以下新功能:
-
主構造函數- 在 Visual Studio 17.6 預覽版 2 中引入。
-
Lambda 表達式中的可選參數- 在 Visual Studio 17.5 預覽版 2 中引入。
-
任何類型的別名- 在 Visual Studio 17.6 預覽版 3 中引入。
-
內聯數組- 在 Visual Studio 17.7 預覽版 3 中引入。
-
集合表達式- 在 Visual Studio 17.7 預覽版 5 中引入。
-
攔截器- 預覽功能在 Visual Studio 17.7 預覽版 3 中引入。
開發人員可以在這篇博客文章中了解有關 .NET Aspire 的更多信息,并且可以在 GitHub 上提交有關此預覽版本的反饋。
廣告聲明:文內含有的對外跳轉鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節省甄選時間,結果僅供參考,所有文章均包含本聲明。
總結
以上是生活随笔為你收集整理的微软发布 .NET 8 开源开发平台:引入 PGO、AVX-512 支持,性能提升 20%的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小组件盒子怎么添加到桌面
- 下一篇: 去年超新星“摧毁”地球部分臭氧层,持续了