Когда я должен выбрать x64-версию приложения поставщика?

524
SqlRyan

У меня Windows 7 x64 (я хотел более 4 ГБ ОЗУ), и я не говорю о драйверах - я говорю об устанавливаемых приложениях.

Если поставщик предлагает версию своего приложения как x86, так и x64, то когда мне следует рассмотреть версию x64? Стоит ли мне всегда отдавать предпочтение этому, даже если он легкий и не занимает много памяти, просто потому, что он скомпилирован в совместимой версии, вместо того, чтобы устанавливать версию x86 и просить Windows подражать мне? Каковы преимущества установки x64-версии чего-либо? Поскольку я предполагаю, что версия x86 имеет более широкую пользовательскую базу, могу ли я ожидать, что она будет более тщательно отлажена?

Или, наоборот, в чем недостаток установки приложения для x86, когда доступна версия для x64? Помимо возможности доступа к большим частям памяти, что еще я отказываюсь?

2

5 ответов на вопрос

5
Marcos Vandel

Приложения, скомпилированные специально для X64, должны иметь лучшую производительность, поскольку они не требуют слоя эмуляции.

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

Некоторые поставщики могут также предоставить «журнал изменений», в котором указаны различия между двумя версиями, которые могут быть рассмотрены.

Лично я всегда выбираю установку версии x64, если она доступна.

64-разрядные процессоры x64 могут запускать 32-битный код напрямую. Повышение производительности достигается за счет того, что 64-битный код получает доступ к большему количеству регистров, а не избегает эмуляции. gmatht 6 лет назад 0
3
harrymc

64-битная версия предпочтительнее по той простой причине, что эта версия будет использоваться в будущем. Будущее явно 64-битное, а 32-битные станут помехой в ближайшие годы.

Тем не менее, на данный момент, есть из чего выбрать:

  • 64-битные инструкции немного быстрее, но требуют больше памяти, так как они больше (адреса больше). Таким образом, с точки зрения производительности, оба они эквивалентны с очень небольшими различиями.
  • 32-битный код немного меньше, поэтому он более экономен при использовании программ в памяти. Но так как большинство 64-битных компьютеров имеют кучу памяти, есть много свободной памяти.
  • Маловероятно, что приложению потребуется более 2 ГБ, что является пределом памяти для 32-разрядных приложений.

Вывод: сделайте свой выбор среди двух архитектур. Но если вы выберете 32-разрядную версию, убедитесь, что у вас также есть установочные файлы для 64-разрядной версии для будущих целей.

Я бы не сказал, что их производительность "эквивалентна очень маленьким различиям". После установки 64-битной версии WinRAR я сразу заметил очень приятное ускорение процесса извлечения. Я также видел, как во многих тестах 64-битные версии некоторых алгоритмов (особенно видео и игр) были на 50% быстрее, чем их 32-битные аналоги. Поэтому я не думаю, что вы можете просто отмахнуться от этого факта. Sasha Chedygov 14 лет назад 1
Мои мнения также основаны на критериях. Я бы не знал, связано ли это улучшение с 64-битным или с тем, что более новый WinRAR был скомпилирован с использованием более современного компилятора и набора библиотек. harrymc 14 лет назад 0
1
Sasha Chedygov

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

0
Jonathan

Если доступна 64-битная версия, всегда выбирайте 64-битную.

Я бы порекомендовал вам взглянуть на 7 вещей, которые вам нужно знать о 64-битной версии Windows 7

Эта 64-битная версия дает какие-то конкретные преимущества, или вы идете на это только потому, что она такая же, как наша ОС? SqlRyan 14 лет назад 0
0
John T

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

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

Не обращая на это внимания, старайтесь по возможности использовать 64-битную сборку. Помимо большего адресного пространства в памяти, о котором вы упомянули, программы, выполняющие много задач, интенсивно использующих ЦП (сжатие, шифрование), могут значительно выиграть от 64-битных регистров.