64 бита лучше 32 бита? Ответ не так очевиден, как вы могли подумать, но теперь у нас есть Chrome 64, и он говорит о том, что 64 — лучший вариант.
Преимущество 64-битной программы перед 32-битной не в том, что она работает вдвое быстрее. Это могло бы быть приблизительно верно, если бы все операции работали с 64-битными данными, но это часто не так. Кроме того, необходимо учитывать накладные расходы на память. В результате многие программисты принимают или оставляют свое отношение к созданию 64-разрядной версии существующего приложения.
Это хорошо видно по тому, как стандартные браузеры перешли на 64-разрядные версии. Safari от Apple был 64-битным на OS-X с 2009 года и на iPhone 5s iOS7. Apple заявляет об ускорении задач рендеринга на 50%.
Microsoft, с другой стороны, поддерживает как 32-битный, так и 64-битный IE в Windows 7, но по умолчанию использует 32-битный браузер. Причина в необходимости поддержки 32-битных надстроек. Microsoft не сообщает о значительном улучшении скорости для 64-битного IE, но утверждает, что он более безопасен из-за функций безопасности 64-битного оборудования.
Google и Mozilla гораздо медленнее внедряют 64-разрядные версии Chrome и Firefox для Windows. У обоих в течение некоторого времени были 64-битные версии Linux, но Windows кажется более сложной проблемой. Стандартный Firefox — это 32-битное приложение. Была и есть 64-битная версия в ночном (то есть даже не бета) канале. Mozilla так мало думала об этом, что собиралась закрыть ее, но была остановлена жалобами. В настоящее время он все еще существует, но Mozilla ничего не делает для его рекламы и не поддерживает.
Теперь Google выпустил свою 64-битную версию Windows для каналов Canary и Dev, что предполагает, что она выйдет на стабильный канал в ближайшем будущем. Он работает только под Windows 7 и 8 и, конечно же, только на 64-битных машинах.
Google подчеркивает, что 64-разрядная версия более безопасна благодаря возможности использовать такие методы памяти, как рандомизация адресного пространства. Он также утверждает, что при использовании полного набора инструкций и соглашений о вызовах с передачей регистров он работает в среднем на 25% быстрее. Так что не так хорошо, как заявляла Apple, на 50% быстрее, но, возможно, среднее значение скрывает лучшую производительность рендеринга.
Что действительно удивительно, так это то, что Google утверждает, что 64-битная версия более стабильна:
«Наконец, мы заметили заметное повышение стабильности 64-битного Chrome по сравнению с 32-битным Chrome. В частности, частота сбоев для процесса рендеринга (то есть процесса веб-контента) почти вдвое меньше, чем у 32-битного Chrome».
Причину этого увидеть гораздо труднее. Этого не может быть, потому что в коде меньше ошибок, потому что, если бы это было так, наверняка исправленные ошибки были бы применены к 32-битной версии. Единственное разумное объяснение состоит в том, что это как-то связано с увеличением ресурсов, т. Это также может быть связано с кодом, сгенерированным компилятором. Если есть какие-то мысли, прокомментируйте.
Идея о том, что 64-битные вычисления более стабильны, интересна.