Управление параметрами компилятора в Eclipse

1

Есть ли способ контролировать уровень оптимизации java-компилятора, который использует Eclipse при создании проекта? Или этот вопрос уже не имеет значения, все ли оптимизация отложена на vm?

Причина, по которой я спрашиваю, это то, что я недавно написал быстрый тест:

private static int test_f(int i) { return i * 42; }

...

int z = 41;
for(int i = 0; i < 10000; ++i) { z = z*42; }         // this loop runs in X seconds
for(int i = 0; i < 10000; ++i) { z = test_f(z); }    // this loop runs in 10*X seconds

Результаты этих тестов imples test_f() не являются встроенными, хотя это действительно является главным кандидатом на это. Это также должно быть возможно сделать во время компиляции.

Окружение/цель vm - Android/Dalvik.

UPDATE: Я исследовал это дальше, и оказывается, что Dalvik не делает этого в этой дате.

Теги:
optimization
jvm

1 ответ

2
Лучший ответ

Да, оптимизация в основном выполняется JIT в наши дни для настольных Java, поэтому компиляторы не делают такие вещи, как inlining. -O даже не указан в качестве опции javac в эти дни (хотя он не нарушает компиляцию, я подозреваю, что это не имеет значения).

Не забывайте, что у Dalvik нет JIT.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню