Адаптивная оптимизация - Adaptive optimization
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Адаптивная оптимизация это техника в Информатика который выполняет динамическая перекомпиляция порций программа на основе текущего профиля выполнения. При простой реализации адаптивный оптимизатор может просто найти компромисс между своевременная компиляция и инструкции по интерпретации. На другом уровне адаптивная оптимизация может использовать преимущества локальных условий данных для оптимизации удаленных ветвей и использования встроенное расширение снизить стоимость вызовов процедур.
Рассмотрим гипотетическое банковское приложение, которое обрабатывает транзакции одну за другой. Эти транзакции могут быть чеками, депозитами и большим количеством малоизвестных транзакций. Когда программа выполняется, фактические данные могут состоять из очистки десятков тысяч чеков без обработки единственного депозита и без обработки единственного чека с мошенническим номером счета. Адаптивный оптимизатор компилирует ассемблерный код для оптимизации в этом общем случае. Если вместо этого система начнет обрабатывать десятки тысяч депозитов, адаптивный оптимизатор перекомпилирует ассемблерный код для оптимизации нового общего случая. Эта оптимизация может включать в себя встраиваемый код.
Примеры адаптивной оптимизации включают: HotSpot и HP Система динамо.[1]
В некоторых системах, особенно Виртуальная машина Java[нужна цитата ], исполнение в диапазоне инструкции по байт-коду возможно доказуемо обратное. Это позволяет адаптивному оптимизатору делать рискованные предположения о коде. В приведенном выше примере оптимизатор может предположить, что все транзакции являются чеками и все номера счетов действительны. Когда эти предположения оказываются неверными, адаптивный оптимизатор может «раскрутиться» до допустимого состояния и затем правильно интерпретировать инструкции байтового кода.
Смотрите также
Рекомендации
внешняя ссылка
- CiteSeer за "Адаптивную оптимизацию в JVM Jalapeño (2000)" Мэтью Арнольд, Стивен Финк, Дэвид Гроув, Майкл Хинд, Питер Ф. Суини. Содержит ссылки на полный текст статьи в различных форматах.