32-битная или 64-битная ОС на VPS 512 Мб?

13

Я планирую арендовать услугу VPS со следующей базовой спецификацией:

  • 512 МБ ОЗУ
  • 1 процессор
  • 20 ГБ HDD (4 ГБ это подкачка)
  • Ubuntu 10.10 сервер

Я могу выбрать между 32-битной или 64-битной установкой сервера Ubuntu в качестве операционной системы.

Мой вопрос: будет ли лучше выбрать 32-битную операционную систему, так как у меня будет только 512 МБ ОЗУ, а не 64-битная операционная система и работа с дополнительными издержками?

редактировать:

Я установил Ubuntu сервер 10.10 32-разрядный и 64-разрядный на VirtualBox. После минималистичной установки с использованием только ssh-сервера 32-разрядная установка потребляет 63 МБ ОЗУ при первой загрузке, а 64-разрядная - 85 МБ ОЗУ.

После установки и запуска демона tor 32-разрядная система потребляет 99 МБ ОЗУ при первой загрузке, а 64-разрядная - 128 МБ.

ДДС
источник
1
Хотя это касается Windows, а не Linux, см. Обсуждение здесь для получения дополнительной информации об использовании 64-разрядной ОС с <4 ГБ оперативной памяти: есть ли какая-то польза от установки 64-разрядной ОС Windows 7, когда у вас меньше 4 ГБ или ОЗУ?
nhinkle
Из любопытства, если вы получаете VPS в качестве услуги, почему 10.10? Кажется, немного кровоточит, и вам придется обновляться раньше, чем позже. Я имею в виду, что это довольно легко изменить на VPS, но просто любопытно.
Emgee
@emgee Я бы не отказывался обновлять его часто, так почему бы и нет ...
dds
Если вы не возражаете, во что бы то ни стало. Раньше мне нравились все обновления, но сейчас, в старости, я склонен придерживаться релизов LTS. Но это только я.
Emgee

Ответы:

13

64-разрядное устройство не потребляет вдвое больше памяти для одной и той же задачи. Некоторый код будет в два раза больше (как в оперативной памяти, так и на диске), а некоторые структуры данных будут также больше из-за более крупных указателей и по соображениям эффективности (т. Е. Структуры дополняются для выравнивания с 64-разрядными границами, а не с 32-разрядными). ), но большинство объемных данных, таких как те, которые хранятся в ОЗУ в базе данных, не будут занимать заметно больше места.

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

Моя интуиция предлагает перейти на 64-битный вариант, если только вы не полагаетесь на 32-битный пакет, у которого нет 64-битной версии или кода, чтобы вы могли скомпилировать свой собственный.

Я бы предложил попробовать оба варианта, если у вас есть время: установить что-то вроде VirtualBox на домашнюю машину, если у вас есть 64-разрядная, и создать две 512 МБ виртуальных машин (одну с полностью 32-разрядной установкой и одну с полностью 64-разрядной). бит один) со смесью программного обеспечения, которое вы планируете использовать. Это даст вам лучшее представление о любых различиях, которые вы заметите, чем практические правила и догадки.

В качестве примечания: 4Gb - это большой объем подкачки для машины 512 Мб, виртуальной или другой. Если у вас столько же страниц на диске, сколько у вас в ОЗУ, вы, вероятно, увидите значительное падение производительности из-за перестановки подкачки (страницы постоянно меняются между ОЗУ и диском), если вы попадаете в ситуацию, когда у вас 8 раз столько страниц памяти на диске, сколько у вас в оперативной памяти, я ожидаю, что виртуальная машина уже давно остановится. Часть этого пространства будет гораздо лучше использоваться в качестве хранилища файлов, если у вас есть возможность.

Дэвид Спиллетт
источник
4 Гб свопа - это дефолт компании, а не мое решение. Спасибо, что сообщили мне, я буду менять, если это возможно.
дд
4

Он не потребляет вдвое больше оперативной памяти. Будет справедливо сказать (однажды), где ты это услышал?

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

tobylane
источник
1
Виртуальная машина, скорее всего, будет находиться на одном физическом хосте, независимо от того, работает ли она на 32-битной сборке ОС или на 64-битной, поэтому не имеет значения, насколько новый ЦП.
Дэвид Спиллетт
1

Рекомендуется использовать 32 бит для оперативной памяти менее 2 ГБ. Например, информация отсюда :

64- битные системы ... обычно требуют ~ 1,7 х ОЗУ для тех же процессов по сравнению с 32-битными системами.

также 32 бит рекомендуется в этом ответе

Максим Холявкин
источник