2

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

и предпочитая их в целом 32-битным встречным частям.

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


Параметр - библиотеки, которые вызываются в веб-приложении. Я знаю, что для каждого попадания создается новый экземпляр веб-приложения. Поэтому я думаю, что 64-битный не является необходимым, поскольку экземпляры ни в коем случае не превышают 2 ГБ использования оперативной памяти.


Помощь будет высоко ценится! :)

2 ответа2

4

Вы правы - в общем, вам не нужно беспокоиться о 64-битных библиотеках или исполняемых файлах, если только вам (а) не нужно большое адресное пространство (скажем,> 2 ГБ) или (б) у вас есть приложение, критичное к производительности (x86-64 имеет в два раза больше регистров, чем x86, и код обычно выполняется примерно на 30% быстрее).

0

x86_64 имеет двойной номер регистра, SSE2/NX и многие другие новые функции по умолчанию, которые могут повысить производительность и надежность.

Каковы характеристики производительности 64-битных и 32-битных виртуальных машин?

Как правило, преимущества возможности адресовать большие объемы памяти приводят к небольшой потере производительности в 64-разрядных виртуальных машинах по сравнению с запуском того же приложения на 32-разрядной виртуальной машине. Это связано с тем, что каждый собственный указатель в системе занимает 8 байтов вместо 4. Загрузка этих дополнительных данных влияет на использование памяти, что приводит к немного более медленному выполнению в зависимости от того, сколько указателей загружено во время выполнения вашей Java-программы. Хорошей новостью является то, что на платформах AMD64 и EM64T, работающих в 64-битном режиме, Java VM получает несколько дополнительных регистров, которые она может использовать для генерации более эффективных последовательностей собственных команд. Эти дополнительные регистры увеличивают производительность до такой степени, что при сравнении скорости выполнения от 32 до 64-бит часто не происходит вообще никакой потери производительности.
Разница в производительности при сравнении приложения, работающего на 64-битной платформе, с 32-битной платформой в SPARC составляет порядка 10-20% при переходе на 64-битную виртуальную машину. На платформах AMD64 и EM64T эта разница колеблется от 0 до 15% в зависимости от количества указателей, обращающихся к вашему приложению.

Здесь вы можете увидеть множество тестов: 32-битный, 32-битный PAE Ubuntu, 64-битный Kernel Benchmarks. В целом увеличение производительности составило бы около 0-15%, но результаты могут сильно различаться, особенно в некоторых приложениях, которые интенсивно используют регистр / расчет (особенно 64-битная математика)

быстрая производительность

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .