The Native Image Generator, or simply NGen, is the ahead-of-time compilation (AOT) service of the .NET Framework. It allows a CLI assembly to be pre-compiled instead of letting the Common Language Runtime (CLR) do a just-in-time compilation (JIT) at runtime. In some cases the execution will be significantly faster than with JIT.
Attributes | Values |
---|
rdf:type
| |
rdfs:label
| - Native Image Generator (en)
- Ngen (ru)
|
rdfs:comment
| - The Native Image Generator, or simply NGen, is the ahead-of-time compilation (AOT) service of the .NET Framework. It allows a CLI assembly to be pre-compiled instead of letting the Common Language Runtime (CLR) do a just-in-time compilation (JIT) at runtime. In some cases the execution will be significantly faster than with JIT. (en)
- The Native Image Generator — утилита, позволяющая создавать из сборок на CIL-коде для исполняющей среды CLR-образы в машинном коде (native image) и устанавливать его в кэш сборок локального компьютера. За счёт этого повышается эффективность управляемых приложений: вместо JIT-компиляции загружается готовая сборка на native-коде. Преимущества: Недостатки: Применение: Все .NET Framework при установке создают образы в Native image. (ru)
|
dct:subject
| |
Wikipage page ID
| |
Wikipage revision ID
| |
Link from a Wikipage to another Wikipage
| |
Link from a Wikipage to an external page
| |
sameAs
| |
dbp:wikiPageUsesTemplate
| |
has abstract
| - The Native Image Generator, or simply NGen, is the ahead-of-time compilation (AOT) service of the .NET Framework. It allows a CLI assembly to be pre-compiled instead of letting the Common Language Runtime (CLR) do a just-in-time compilation (JIT) at runtime. In some cases the execution will be significantly faster than with JIT. (en)
- The Native Image Generator — утилита, позволяющая создавать из сборок на CIL-коде для исполняющей среды CLR-образы в машинном коде (native image) и устанавливать его в кэш сборок локального компьютера. За счёт этого повышается эффективность управляемых приложений: вместо JIT-компиляции загружается готовая сборка на native-коде. Преимущества:
* уменьшает время загрузки приложения, так как JIT-компиляции не требуется.
* уменьшает время первого запуска функций, так как JIT-компиляции не требуется.
* улучшает использование памяти, так как JIT-компилятор не требуется.
* полученные dll могут одновременно использоваться многими процессами. (sharing between processes)
* компиляция происходит под конкретный процессор, используемый в системе. Недостатки:
* Ограничения на использование метода Assembly.LoadFrom
* Native image не заменяет исходные dll, а хранится отдельно. Поэтому используется больше дискового пространства.
* Рассинхронизация NGen-файлов. При появлении новой версии сборки необходимо обновлять и образ в локальном кеше.
* Так как native image и исходная сборка имеют разные адреса для функций, то при вызове методов, находящихся в native image, добавляется операция модификации базового адреса. Применение:
* Если dll используют много процессов или оно используется из разных доменов. Native image даст возможность одновременного использования библиотеки многими процессами.
* Если необходимо ускорить запуск приложения и уменьшить используемую память.
* Применение к большим программам дает больший эффект, чем применение к маленьким программам.
* Для программ с длительным временем выполнения эффект очень маленький (так как JIT-компиляция осуществляется только один раз — по первому обращению. Далее используется скомпилированная версия. И с каждым новым вызовом суммарная разница будет уменьшаться.) Все .NET Framework при установке создают образы в Native image. (ru)
|
gold:hypernym
| |
prov:wasDerivedFrom
| |
page length (characters) of wiki page
| |
foaf:isPrimaryTopicOf
| |
is Link from a Wikipage to another Wikipage
of | |
is Wikipage redirect
of | |
is foaf:primaryTopic
of | |