Что установить: Windows 32-bit или 64-bit?
Перед тем, как сравнивать 32-битную и 64-битную редакции Windows следует понять, что представляют из себя эти редакции, и какого их значение. Сначала расскажем о процессорах. Многие, возможно слышали о существовании 32-битных и 64-битных процессоров. Рассмотрим, что же означают эти биты.
Наверное не стоит говорить о том, что процессор – это достаточно сложное устройство. Он состоит из множества разных блоков, среди которых и кэш-память, и разные уровни, и блоки выбора и декодирования команд, блоки предсказывающие переходы, разные типы вычислительных блоков. В некоторых современных процессорах также имеются контроллеры памяти, контроллер шины PCI-Express и графическое ядро. В этой статье для нас важны вычислительные блоки.
Процессор может иметь разные типы таких блоков. Одни производят вычисления с целыми числами, другие — операции с вещественными числами или числами с плавающей запятой. Кроме того существуют блоки для т.н. сложных инструкций. В качестве примера рассмотрим блоки выполняющие вычисления с целыми числами или ALU. Во время работы эти блоки где-то должны хранить промежуточные данные. Для этих временных хранилищ были созданы регистры. От обычной памяти и кеш памяти их отличают прежде всего минимальные задержки и очень высокая скорость работы. Так вот эти самые регистры и скрывают главное отличие т.н. 32-битных и 64-битных процессоров. Рассмотрим это более подробно.
Так называемые 32-битные процессоры имеют 8 регистров общего назначения, объем которых составляет 32 бита. А 64-битные процессоры имеют в двое больше таких регистров, а объем их составляет 64 бита. Вот это и есть основное различие между 32-битными и 64-битными процессорами. Стоит сказать о том, что почти все современные процессоры являются 64-битными.
А теперь расскажем о том, для чего на практике нужны эти регистры. Если сказать обобщенно, то процессор на 64-бит в нормальном 64-битном режиме сможет работать с 64-битными числами не используя какие-либо ухищрения, как например, разбивку одной сложной операции на две. Кроме того таким образом могут быть объединены 2 простые операции над 32-битными числами в 1 сложную. Тем не менее не каждую операцию можно объединить с другой, но и это не мало.
Важно: производительность можно увеличить лишь работая с 64-битным наборам инструкций х86-64. Также следует сказать о том, что помимо блока вычислений с целыми числами ALU, процессор также имеет блок вычислений чисел с плавающей точкой или FPU. В нем содержатся более объемные 80-битные регистры и используются инструкции х87. Помимо этого процессор имеет другие блоки и регистры. Например, SSE-регистры. Их длина составляет 128 бит.
Мы помним о том, что есть 64-битный режим работы. Но есть и другие. 64-битный процессор имеет поддержку и так называемого режима совместимости, в котором дополнительные восемь регистров выключаются и поведение 64-хбитного процессора становится таким же как 32-битного. Это требуется прежде всего для того, чтобы обеспечить совместимость системного ПО и программ, не умеющих работать с 64-битным процессором. Почему он собственно и назван режимом совместимости.
Для того, чтобы процессор мог нормально работать в 64-битном режиме, потребуется 64-битная ОС и соответствующие драйвера. Если установлена 32-битная ОС, то процессор будет работать в режиме совместимости и вести себя как 32-битный процессор.
Важно: некоторые читатели могут вполне справедливо спросить о том, как 32-битные программы смогут работать в 64-битной ОС. Эту проблему удалось решить вполне логично: система имеет 2 набора системных библиотек для 64-битных и 32-битных приложений.
Но у разрядности регистров есть и более актуальная проблема. Дело в том, что ограничено адресное пространство для памяти. А попросту говоря, процессор способен адресовать лишь 4 Гб адресного пространства. Так ведь ноутбук и имеет 4Гб оперативной памяти, и системе должно быть видно все эти 4Гб. Но помимо оперативной памяти, есть и память видеокарты, буферы разных устройств и BIOS может для этого же видеоядра выделить еще какую-то память. В результате память, которая была доступна пользователю уменьшится 2.5 — 3.5 Гб. И это ограничение не зависит от операционной системы. Перейдем к более детальному рассмотрению этой проблемы.
Тут нет ничего сложного. Регистры хранят как данные, так и указатели адресов. В 32-битном процессоре объем этого регистра составляет 32 бита. Вот откуда появилось это ограничение в 4 Гб или 232 байт.
Подводя итог всего изложенного выше, стоит сказать, что любая 32-битная ОС не может работать используя все 4 Гб ОЗУ по той причине, что большинству системных устройств для работы требуется часть адресного пространства, а оно ограничено 4Гб. Поэтому системе приходится отбирать его у оперативной памяти. Неиспользованная оперативная память может быть использована в качестве временного диска, для этого потребуется утилита RAM Disk.
Важно: для 32-битных ОС создан механизм, позволяющий использовать адресное пространство более 4Гб. Это т.н. PAE (Physical Address Extension), в этом случае ОС может адресовать до 64 Гб памяти. Эту технологию с самого начала разрабатывали для серверных систем. Для того, чтобы она могла нормально работать требуются соответствующие исправленные драйвера. Так как таких рабочих драйверов почти нет, то эта технология даже на серверных ОС по умолчанию отключена. В обычных редакциях ОС Windows она также была отключена по умолчанию. И по той же причине. Сегодня есть специалисты, которые научились ее включать, система может видеть всю оперативную память, которая доступна ей, но происходят ошибки в самых разных местах. А их диагностика не так проста. Поэтому если вы хотите использовать более 3 — 4 Гб ОЗУ, то вам нужно установить 64-битную ОС.
Как можно видеть, в 64-битном режиме работы имеются следующие преимущества и недостатки:
- 64-битная ОС работает со всем объемом ОЗУ;
- Некоторые из операций на 64-битном процессоре могут быть выполнены намного быстрее;
- Для 64-битных указателей требуется больше памяти, что делает объем занимаемой приложениями ОЗУ больше.
Как видите, не все так однозначно. Рассмотрим теперь как же это проявляется на практике.
Сравнение производительности 32-bit и 64-bit версий Windows
Сначала расскажем о том какая методика тестирования использовалась.
Измерения были проведены на ноутбуке Asus N61Vn имеющим четырехьядерный процессор Intel Core 2 Quad Q9000, использовалась видеокарта nVidia GeForce GT 240M с 1 Гб выделенной памяти. Важно заметить, что ноутбук имел 4 Гб ОЗУ DDR3-1066. При сравнении были использованы 32- и 64-битные версии Windows Vista SP2 с установленными последними обновлениями. Драйвера имели одинаковые версии, что позволило нивелировать разницу в производительности между различными версиями. По указанным выше причинам 32-битная версия Windows имела приблизительно 3Гб доступной оперативной памяти, а 64-битная редакция — примерно 4 Гб.
Важно также заметить то, что этот тест был проведен на Windows XP и Windows 7 на ноутбуке Acer Timeline 3810T с одноядерным процессором Intel Core 2 Duo SU3500 и 4Гб оперативной памяти, у которого были более ограниченные возможности. Результаты и в этих случаях не изменились и были приблизительно такие же.
Сравнение производительности для удобства мы разделили на 2 части:
- 1. Сначала мы исследовали производительность обычных 32-битных программ на 32-битной и 64-битной версиях систем;
- 2. Затем мы измеряли скорости работы 32-битной и 64-битной версий программ на соответствующих редакциях Windows.
Тестирование производительности прикладных 32-битных программ
Цель этого тестирования — определить увеличение производительности при переходе с 32-битной на 64-битную версию системы Windows. Данное исследование является актуальным, так как сегодня у многих игр и программ отсутствуют специальные оптимизированные 64-битные версии. Важно отметить и то, что 32-битная система может работать с 3 Гб памяти, а 64-битная версия — с 4 Гб.
Сравнить производительность помогли следующие приложения:
- 3DMark03 3.6;
- 3DMark05 1.3;
- 3DMark06 1.1;
- PCMark05 1.2.
Эти приложения были выбраны, так как они достаточно точно отражают реальную производительность большей части программ и игр. Если бы в данном исследовании были использованы различные прикладные программы, то методика исследования стала бы намного сложней. А процент погрешности измерений был бы увеличен из-за худшего повторения того или иного теста и ограничения точности в средствах измерения.
1. Итоги сравнения производительности в 3DMark03
Приложения были настроены по умолчанию. Разрешение экрана 1024 х768:
2. Результаты сравнения производительности в 3DMark05
Приложения были настроены по умолчанию. Разрешение экрана 1024 х768:
3. Результаты сравнения производительности в 3DMark06
Приложения были настроены по умолчанию. Разрешение экрана 1280 х720:
4. Результаты сравнения производительности в PCMark05
В этом тесте были проведены отдельные дополнительные тесты. Ниже представлены результаты каждого.
Результат общего исследования в PCMark05
Производительность процессора с тестовым пакетом PCMark05
Производительность памяти в рамках теста PCMark05
Виден результат полученный благодаря дополнительному гигабайту ОЗУ у 64-битной системы.
Производительность графики в тесте PCMark05
Результаты производительности винчестера в PCMark05
Итоги сравнения производительности обычных приложений
Результаты полученные после проведения данного исследования оказались весьма ожидаемыми. Из-за того, что был использован режим совместимости у 64-битной ОС при работе с обычными 32-битным приложениями производительность оказалась меньше.
В результате этого сравнения производительности также было выявлено, что реальную пользу 4 гигабайта ОЗУ в этом наборе приложений не приносят. Здесь необходимо подчеркнуть, что в действительности для тяжелых приложений, к которым относятся графические редакторы, системы автоматизированного проектирования (CAD) и другие, объем ОЗУ очень важен. В них дополнительные гигабайты ОЗУ действительно полезны.
Сравнение производительности 32- и 64-битных программ
Цель данного исследования — измерить увеличение производительности во время использования оптимизированных 64-битных приложений на 64-битной ОС.
Для сравнения производительности были также использованы программы:
- Архиватор 7-Zip версии 4.65;
- Тестовый пакет PCMark Vantage.
1. Тестирование при помощи архиватора 7-Zip
Здесь он используется как тестовое приложение, так как он имеется и в 32-битной и в 64-битной версиях, он может работать с многоядерными процессорами, он способен достаточно сильно нагружать процессор, в нем имеется набор встроенных средств позволяющих тестировать производительность. Во время тестирования размер словаря насчитывал 32 Мб.
А теперь посмотрим на результаты:
Как можно видеть показатели архиватора 64-битной оптимизированной версии на 64-битной ОС были лучше в сравнении с аналогичной 32-битной версией на 32-битной системе. Этого и следовало ожидать. Оптимизации смогли себя показать.
2. Тестирование при помощи тестового пакета PCMark Vantage
Существует как 32-битная, так и 64-битная версии тестового пакета PCMark Vantage. В этом тестовом пакете имеются разные тесты. Рассмотрим каждый из них.
Общий результат в тестовом пакете PCMark Vantage
Производительность ОЗУ в PCMark Vantage
Скорость воспроизведения видео и TV в PCMark Vantage
Производительность для игр
Производительность воспроизведения музыкальных файлов в PCMark Vantage
Сравнение производительности коммуникаций в PCMark Vantage
Сравнение производительности в офисных программах
Сравнение производительности жесткого диска
Как и 7-Zip, в целом 64-битный тестовый пакет PCMark Vantage показал большую производительность чем 32-битный на 32-битной ОС. Здесь важным моментом оказались оптимизации под 64-битные процессоры, и больше объема доступной памяти: 4 Гб у 64-битной системы и 3 у ее 32-битной версии.
Итог сравнения производительности 32-битной версии Windows с 64-битной
Пришло время подвести итог данного теста:
- Наибольшее увеличение производительности в 64-битных версиях Windows XP, Vista, 7 наблюдалось в случае, когда были использованы оптимизированные 64-битные версии приложений и игр. Во время работы с обычными приложениями, без оптимизации под 64-битную версию производительность не увеличивается;
- Многие программы и игры не смогли показать заметного роста производительности когда был увеличен объем доступной ОЗУ больше 3 Гб. Исключением можно назвать сложные программы, которые позволяют работать с видео, изображениями, системы проектирования и прочие. В дальнейшем этих приложений будет больше. Для таких программ использовать 64-битную систему будет весьма обоснованно.
- Некоторые из приложений на 64-битной ОС показали нестабильную работу по разным причинам. Но этих приложений не так много.
В конце хочется отметить то, что вы сами выбираете версию Windows для своих нужд. И если это исследование смогло вам помочь, то мы будем только рады.