Должен ли я использовать опцию javac -O для оптимизации?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Должен ли я использовать опцию javac -O для оптимизации?

Сообщение Anonymous »

имеет интересную опцию -O:


Оптимизирует скомпилированный код путем встраивания статических, финальных и частных методов. Обратите внимание, что ваши классы могут стать больше по размеру.


Кажется, этот вариант непопулярен (скрыт?), я' Я только сегодня обнаружил это на странице CodeCup 2014.
не упоминается ни в официальной документации, ни в man javac... Странно.

В принятом ответе на аналогичный вопрос мы можем прочитать это :


Оптимизация в Java в основном выполняется JIT-компилятором во время выполнения.
Следовательно, нет смысла пытаться дать ему указание оптимизировать определенным
способом во время компиляции (когда он все равно создает только байт-код).
JIT почти наверняка примет более правильные решения на месте, зная
точную среду и наблюдая за фактическими шаблонами выполнения
конкретных частей вашего кода.


Мой вопрос:

Должен ли я всегда использовать опцию -O или нет? Другими словами, код всегда работает быстрее с -O или это вообще не имеет значения?

Может быть, размер классов может увеличиться настолько, что общая производительность упадет? Или JVM все равно выполнит встраивание, так что лучше оставить это как есть?

Похожая история была с флагом gcc -O3.>

Подробнее здесь: https://stackoverflow.com/questions/209 ... o-optimize
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»