Мне сказали, что 32-битный Linux с ядром bigmem (когда в системе> = 4 ГБ ОЗУ) будет работать лучше, чем 64-битный Linux.
Я бы хотел дать определение "работать лучше, чем"для вас, но, к сожалению, человек, который сказал мне это, не уточнил / не обосновал ... отсюда и этот пост!
Есть ли в этом хоть какая-то правда? Любые обстоятельства, при которых это было бы правдой?
Спасибо
в процессорах x86 64-битный код помогает двумя способами:
и имеет следующие минусы:
поэтому во многих случаях лучшее из обоих миров - это 64-битная ОС и 32-битные процессы:
но, в целом, преимущество редко бывает заметным (просто предполагаю, что оно будет намного меньше, чем 5%), поэтому просто переходите на 64-битную версию везде и все становится проще.
единственный случай, когда я определенно выберу 32-на-64, - это изоляция типа OpenVZ. Таким образом, каждый владелец раздела сможет максимально использовать ограниченную оперативную память, к которой он имеет доступ.
все же я не знаю любой преимущество PAE перед 64-битным (даже не маленькими указателями, поскольку каждый указатель PAE имеет 32-битное смещение и дополнительный (до 32-битного) «старт» (помните сегментированную память 8086? Что за раздувание! )
PAE вредит производительности. Единственный возможный выигрыш в том, что указатели уменьшатся вдвое, но теперь вам придется иметь дело с перестановкой страниц памяти.
Помимо меньшей потребности в регистрах, x86_64 дает вам более разумные операции с плавающей запятой. Это также гарантирует, что ваши двоичные файлы будут лучше оптимизированы, потому что компилятору никогда не нужно было генерировать обратно совместимые коды операций. Если вы используете что-то с привязкой к процессору, это большая победа.