国产精品高清免费在线视频-亚洲精品午夜福利一区-91成人精品国产免费男男-噼里啪啦日本一区二区

上海啟嘟渡科技商貿(mào)有限公司
SEARCH

與我們合作

我們專注提供互聯(lián)網(wǎng)一站式服務(wù),助力企業(yè)品牌宣傳多平臺多途徑導(dǎo)流量。
主營業(yè)務(wù):網(wǎng)站建設(shè)、移動端微信小程序開發(fā)、營銷推廣、基礎(chǔ)網(wǎng)絡(luò)、品牌形象策劃等

您也可通過下列途徑與我們?nèi)〉寐?lián)系:

微 信: wxyunyingzhe

手 機(jī): 15624122141

郵 箱:

利用 PGO 提升 .NET 程序性能

更新時間:2025-01-10 14:16:25

.NET 6開始引入了PGO(Profile Guided Optimization),這是一種通過收集運行時信息來指導(dǎo)JIT如何優(yōu)化代碼的技術(shù)。相比之前沒有PGO的情況,現(xiàn)在可以完成更多以前難以完成的優(yōu)化。

為了測試.NET 6中的PGO,我們使用了nightly build版本6.0.100-rc.1.21377.6。

.NET 6提供了靜態(tài)PGO和動態(tài)PGO。靜態(tài)PGO通過工具收集profile數(shù)據(jù),然后應(yīng)用到下一次編譯中,指導(dǎo)編譯器進(jìn)行代碼優(yōu)化;動態(tài)PGO則直接在運行時收集profile數(shù)據(jù)并進(jìn)行優(yōu)化。此外,從.NET 5開始引入了OSR(On Stack Replacement),可以在運行時替換正在運行的函數(shù),允許將低優(yōu)化代碼遷移到高優(yōu)化代碼。

.NET從Core 3.1開始引入了分層編譯,程序啟動時JIT首先快速生成低優(yōu)化的tier 0代碼,隨著程序運行,對多次調(diào)用的方法進(jìn)行再次JIT產(chǎn)生高優(yōu)化的tier 1代碼。然而,這樣做對于程序的性能幾乎沒有提升,只是改善了延時。因此,在開發(fā)客戶端類程序時通常關(guān)閉分層編譯,而在開發(fā)服務(wù)器程序時開啟分層編譯。.NET 6引入PGO后,分層編譯的機(jī)制變得非常重要。

由于tier 0的代碼是低優(yōu)化代碼,因此更能夠收集到完整的運行時profile數(shù)據(jù),指導(dǎo)JIT做更全面的優(yōu)化。例如,在tier 1代碼中,某方法B被某方法A內(nèi)聯(lián),運行期間多次調(diào)用方法A后收集到的profile將只包含A的信息,而沒有B的信息;又例如在tier 1代碼中,某循環(huán)被JIT做了loop cloning,那此時收集到的profile則是不準(zhǔn)確的。

為了發(fā)揮PGO的最大效果,我們需要開啟分層編譯,并給循環(huán)啟用Quick Jit在一開始生成低優(yōu)化代碼。

下面通過一個測試代碼的例子來說明如何使用.NET 6的PGO。

測試環(huán)境:不使用PGO,關(guān)閉分層編譯,使用動態(tài)PGO,使用靜態(tài)PGO + AOT編譯。

測試結(jié)果顯示,啟用PGO后,性能得到了顯著提升,性能提升幅度達(dá)到了322%。

總結(jié):有了PGO之后,之前的很多性能經(jīng)驗就不再有效。借助PGO,我們可以預(yù)見大幅度的執(zhí)行效率提升。在后續(xù)版本中,.NET將會帶來更多基于PGO的優(yōu)化。

多重隨機(jī)標(biāo)簽

猜你喜歡文章

QQ客服 電話咨詢
激情少妇一区二区三区| 亚洲超碰成人天堂涩涩| 最近中文字幕高清中文字幕无| 国产精品欧美在线观看| 高清一区二区三区大伊香蕉| 国产丝袜女优一区二区三区| 亚洲国产成人精品福利| 日韩欧美亚洲综合在线| 熟女白浆精品一区二区| 日韩人妻免费视频一专区| 久久精品欧美一区二区三不卡| 欧美黑人黄色一区二区| 日本一品道在线免费观看| 黄色激情视频中文字幕| 亚洲精品国产福利在线| 日本理论片午夜在线观看| 成人午夜激情免费在线| 国产精品欧美日韩中文字幕| 日韩欧美三级中文字幕| 亚洲一区二区三在线播放| 国产精品伦一区二区三区四季| 欧美一区日韩二区亚洲三区| 日本一区二区三区黄色| 国产精品一区二区视频| 国产熟女一区二区三区四区| 国产日韩精品欧美综合区| 国产欧洲亚洲日产一区二区| 日韩日韩日韩日韩在线| 中文字幕高清不卡一区| 国产精品久久精品国产| 国产又黄又爽又粗视频在线| 日韩精品一级一区二区| 丰满人妻熟妇乱又乱精品古代| 中文字幕日韩欧美理伦片| 久久精品蜜桃一区二区av| 99国产精品国产精品九九| 色一欲一性一乱—区二区三区| 国产成人精品视频一区二区三区| 国产精品免费福利在线| 亚洲国产精品久久琪琪| 黄片在线观看一区二区三区|