Собственный генератор изображений
Native Image Generator , или просто NGen , — это предварительной компиляции (AOT) служба .NET Framework . Это позволяет сборку CLI предварительно скомпилировать вместо того, чтобы среда Common Language Runtime (CLR) выполняла своевременную компиляцию (JIT) во время выполнения. В некоторых случаях выполнение будет значительно быстрее, чем при использовании JIT.
Общая информация
[ редактировать ]Генератор собственных изображений создает собственный двоичный образ для текущей среды (т. е. операционной системы). Это устраняет накладные расходы JIT за счет портативности и дискового пространства; всякий раз, когда образ, созданный NGen, запускается в несовместимой среде, .NET Framework автоматически возвращается к использованию JIT. После запуска NGen для сборки полученный собственный образ помещается в Native Image Cache (NIC) для использования всеми другими сборками CLI. Это позволяет, например, использовать NGen для обработки сборок CLI во время установки, экономя процессорное время позже, когда конечный пользователь вызывает приложение в своей системе.
NGen предназначен для ускорения выполнения сборки за счет удаления процесса JIT-компиляции во время выполнения, но это не всегда улучшает производительность, поскольку некоторые оптимизации могут быть выполнены только JIT-компилятором (например, если JIT-компилятор знает, что код уже запущен). при полном доверии он может пропустить некоторые дорогостоящие проверки безопасности). По этой причине использовать NGen имеет смысл только после тестирования производительности приложения до и после него.
См. также
[ редактировать ]- Общеязыковая инфраструктура (CLI)
- Общий промежуточный язык (CIL)
- Глобальный кэш сборок (GAC)
- CoreRT
Внешние ссылки
[ редактировать ]