Skip to content

DotNet AOT 2022

Anatoly Kulakov edited this page Jan 18, 2023 · 1 revision

Евгений Пешков «.NET: AOT в 2022»

JIT-компиляция в .NET позволяет создавать кроссплатформенные приложения и решает проблемы взаимодействия сборок в рантайме, но может негативно сказаться на производительности приложения, особенно на этапе старта, когда необходимо загрузить и скомпилировать множество методов сразу.

.NET на протяжении всей своей истории имел средства для решения этой проблемы, позволяющие предкомпилировать весь или часть кода заранее. Например, NGen в .NET Framework или CoreRT как самостоятельная платформа. В современном .NET основное средство для Ahead-of-Time compilation — это Crossgen2.

К сожалению, Ahead-of-Time компиляция — далеко не серебряная пуля, а технология, несущая свои tradeoffs и не гарантирующая прирост производительности.


Доклад представил Евгений Пешков в рамках Встречи SpbDotNet №82.

Clone this wiki locally