精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

.NET Core引入性能分析引導(dǎo)優(yōu)化

責(zé)任編輯:editor004

作者:Jeff Martin

2017-08-02 11:21:42

摘自:INFOQ

它通過(guò)一個(gè)兩步編譯過(guò)程實(shí)現(xiàn)優(yōu)化——用第一步記錄相關(guān)執(zhí)行信息,然后第二步用那些信息構(gòu)建一個(gè)改進(jìn)過(guò)的二進(jìn)制文件。

“性能分析引導(dǎo)優(yōu)化(Profile Guided Optimization,縮寫(xiě)PGO)”是一項(xiàng)原生編譯技術(shù),可用于生成高度優(yōu)化的代碼。它通過(guò)一個(gè)兩步編譯過(guò)程實(shí)現(xiàn)優(yōu)化——用第一步記錄相關(guān)執(zhí)行信息,然后第二步用那些信息構(gòu)建一個(gè)改進(jìn)過(guò)的二進(jìn)制文件。據(jù)來(lái)自微軟的Daniel Podder和Bertrand Le Roy介紹,從歷史上看,該過(guò)程的好處是改進(jìn)了二進(jìn)制代碼在鏡像中的位置,產(chǎn)生了更好的行為和引用集局部性。

在.NET Core中實(shí)現(xiàn)PGO的一個(gè)重要原因是,用戶不需要采取任何特殊的措施就可以從PGO受益,因?yàn)樗菓?yīng)用到.NET Core運(yùn)行時(shí)和JIT編譯器的。因此,它會(huì)針對(duì)特定的應(yīng)用程序根據(jù)其使用情況進(jìn)行恰當(dāng)?shù)母倪M(jìn),而托管應(yīng)用程序會(huì)自動(dòng)受益。

Podder和Le Roy表示,對(duì)于這個(gè)版本,PGO優(yōu)化已經(jīng)應(yīng)用到.NET Core運(yùn)行時(shí)的原生部分,但將來(lái),他們會(huì)把這些優(yōu)化應(yīng)用到.NET Core技術(shù)棧的托管組件。和針對(duì).NET Core 1.1的PGO優(yōu)化只適用于Windows x86不同,這些最新的優(yōu)化已經(jīng)擴(kuò)展到了Windows x64和Linux x64上。

由于一個(gè).NET Core應(yīng)用程序超過(guò)75%的啟動(dòng)時(shí)間都消耗在coreclr.dll和clrjit.dll上(在Linux上是libcoreclr.so和libclrjit.so),所以那是團(tuán)隊(duì)設(shè)法度量并改進(jìn)性能的地方。根據(jù)微軟的基準(zhǔn)測(cè)試,在Windows平臺(tái)(x64 & x86)上的改進(jìn)非常顯著,性能提升在14%到23%之間。另一方面,在Linux x64上的性能提升在2%到5%之間。這一點(diǎn)很重要,這讓我們知道啟用PGO并沒(méi)有導(dǎo)致在Linux上的性能退化,同時(shí),這也表明將來(lái)仍然有很大的改進(jìn)空間。

按照微軟新聞發(fā)言人的說(shuō)法,Windows和Linux被視為關(guān)鍵的部署目標(biāo),因此,它們會(huì)首先引入PGO技術(shù)。對(duì)于其他的平臺(tái),如macOS,他們將來(lái)會(huì)根據(jù)用戶反饋進(jìn)行考慮。

查看英文原文:Profile Guided Optimization Comes to .NET Core

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號(hào)-6京公網(wǎng)安備 11010502049343號(hào)

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 涿鹿县| 云和县| 张掖市| 许昌县| 龙川县| 农安县| 大足县| 崇仁县| 屏南县| 东至县| 通许县| 福清市| 正定县| 大姚县| 驻马店市| 梨树县| 长武县| 昌平区| 宜良县| 新沂市| 桃园县| 兴城市| 仁化县| 阳泉市| 永春县| 清远市| 彭山县| 浪卡子县| 崇礼县| 右玉县| 安泽县| 象山县| 禹州市| 西乌珠穆沁旗| 大石桥市| 河西区| 博爱县| 无锡市| 犍为县| 玉田县| 兰考县|