Я компилирую с x64 JDK? - PullRequest
1 голос
/ 04 мая 2010

У меня установлен 64-битный JDK на моей машине? Моя версия Java говорит: C: \ Documents and Settings \ Администратор> java -version

java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) 64-Bit Server VM (build 16.3-b01, mixed mode)

Стоит ли ожидать повышения производительности при использовании 64-битного компилятора по сравнению с 32-битным? Спасибо, Mike

Ответы [ 3 ]

3 голосов
/ 04 мая 2010

Да, это говорит, что Java Hotspot (TM) 64-битная. Что касается производительности 64-битной и 32-битной JVM, то основным преимуществом 64-битной JVM является большее адресное пространство. См. Hotspot FAQ .

Основное преимущество запуска Java в 64-битной среде больше адресное пространство. Это позволяет значительно больший размер кучи Java и увеличенный максимальное количество потоков Java, которое необходим для определенных видов больших или долго работающие приложения. Основное осложнение при выполнении такого порт то, что размеры какой-то родной типы данных изменены. Не на удивление размер указателей увеличено до 64 бит. На Солярисе и большинство платформ Unix, размер C язык долго также увеличен до 64 биты. Любой нативный код в 32-битном Реализация SDK, которая опиралась на старые размеры этих типов данных скорее всего, потребуется обновление.

2 голосов
/ 04 мая 2010

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

Вы можете видеть разные времена компиляции между 32-битным и 64-битным компилятором, так же, как вы можете видеть разные времена выполнения между 32-битной и 64-битной (но JRE, а не JDK). Это зависит от того, насколько хорошо они были оптимизированы для этой архитектуры (x86 / x64), но одна не влияет на другую (медленная компиляция не означает, что выполнение будет медленным или наоборот).

(Конечно, это предполагает, что два компилятора отличаются только по битности, и что они не применяют разные наборы оптимизаций или иным образом делают некоторые вещи немного по-разному.)

2 голосов
/ 04 мая 2010

Я бы не ожидал какого-либо значительного улучшения производительности с 64-битным компилятором, нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...