Помогает ли это использовать NGEN?

Лучше ли использовать NGEN приложение ASP.NET, когда мы знаем, что это не изменится? Или JIT достаточно хорош?

Единственная причина, по которой я спросил, состояла в том, что в этой статье Джеффри Рихтера в 2002 году говорится:

И, конечно же, Microsoft очень усердно работает над улучшением CLR и его JIT-компилятора, чтобы он работал быстрее, создавал более оптимизированный код и более эффективно использовал память. Эти улучшения потребуют времени. Для разработчиков, которые не могут ждать, распространяемая .NET Framework включает утилиту NGen.exe.

    NGen поможет только время запуска – это не делает код выполняться быстрее, чем после JITting. Действительно, я считаю, что есть некоторые оптимизации, которые NGen не делает, кроме JIT.

    Итак, главный вопрос: есть ли у вас проблема со временем запуска? Я не знаю, сколько времени запуска приложения ASP.NET будет JITting и других затрат, кстати … вам, вероятно, стоит взглянуть на графики Performance Manager для JIT, чтобы рассказать вам, сколько времени это действительно стоит вам ,

    (Что касается доступности, наличие нескольких серверов, чтобы вы могли выполнять перепрограммирование, вы получите гораздо больше преимуществ, чем один сервер с веб-приложением NGENed.)

    NGen не подходит для ASP.NET – создание DLL-файлов в папке bin не является последним шагом – они снова скомпилируются с настройками web / maching.config, применяемыми в вашем C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files папка C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files . Вместо NGen, чтобы уменьшить начальное время загрузки, используйте инструмент «Опубликовать веб-сайт» или aspnet_compiler.exe

    Я не уверен, что основным преимуществом NGEN является только время запуска – если приложение страдает от высокого « % времени в JIT », это указано как потенциальное средство: http://msdn.microsoft.com/ru -us / library / dd264972 (VS.100) .aspx .

    Обсуждение тесно связано с другим вопросом о том, как машинный код JIT’d кэшируется и повторно используется?

    Я смотрел сегодня вечером и наткнулся на следующее:

    Общая среда исполнения не может загружать изображения, созданные с помощью NGEN, в общий домен приложения. Поскольку стандартные сборки ASP.NET являются общими и затем загружаются в общий домен приложения, вы не можете использовать Ngen.exe для их установки в собственный кеш образа на локальном компьютере. http://support.microsoft.com/kb/331979

    Не уверен, что это относится только к assemblyм, на которые ссылается приложение ASP.net или само приложение?

    Да, это видео, это видео на YouTube, демонстрирует это на самом деле видео настройки производительности NGEN.exe

    Но слово осторожности проверить, проверить, а затем реализовать его.

    NGen помогает время запуска. Например, документация Entity Framework говорит об использовании NGen:

    Эмпирические наблюдения показывают, что собственные изображения сборок времени EF могут сокращаться между 1 и 3 секундами времени запуска приложения.

    Контекст – это только сборки Entity Framework. NGenning других сборок обеспечит дополнительное ускорение.

    Interesting Posts

    Для какой рабочей нагрузки Core i7-920 будет быстрее, чем i7-860?

    Почему мой гибридный диск не активен?

    Инициализатор константного выражения для статического члена classа типа double

    Поддерживает ли Android Volley SSL?

    Терминал Mac OS X – Командные клавиши Remap

    Как ssh два компьютера за NAT и брандмауэром, без третьего компьютера

    Selenium с использованием Java. Путь к исполняемому файлу драйвера должен быть задан с помощью свойства webdriver.gecko.driver

    Почему этот процесс рушится, как только он запускается?

    Начиная с обновления до Windows 10 мой тачпад быстро переключается с включенного на отключенный

    Android, Сделать изображение по URL-адресу, равному изображению ImageView

    Генерировать различные случайные числа в C #

    $ Logout bash: logout: не login shell: используйте exit '

    Программно ассоциировать расширения файлов с приложением в Windows

    jQuery получить все div, которые не имеют атрибута classа

    Магазин не будет открыт после обновления

    Давайте будем гением компьютера.