Ich plane, einen VPS-Dienst mit folgenden grundlegenden Spezifikationen zu mieten:
- 512 MB RAM
- 1 CPU
- 20 GB Festplatte (4 GB davon sind Swap)
- Ubuntu 10.10 Server
Ich kann zwischen einer 32-Bit- oder 64-Bit-Installation des Ubuntu-Servers als Betriebssystem wählen.
Meine Frage ist, wäre es besser, ein 32-Bit-Betriebssystem zu wählen, da ich nur 512 MB RAM haben werde, anstatt ein 64-Bit-Betriebssystem zu verwenden und mit dem zusätzlichen Overhead umzugehen?
bearbeiten:
Ich habe Ubuntu Server 10.10 32 Bit und 64 Bit auf VirtualBox installiert. Nach einer minimalistischen Installation mit nur einem SSH-Server verbraucht die 32-Bit-Installation beim ersten Start 63 MB RAM und die 64-Bit-Installation 85 MB RAM.
Nach der Installation und dem Ausführen von tor daemon werden beim ersten Start von 32 Bit 99 MB RAM und von 64 Bit 128 MB RAM verbraucht.
Antworten:
Eine 64-Bit-Anordnung belegt nicht doppelt so viel Speicher für dieselben Aufgaben. Ein Teil des Codes ist doppelt so groß (sowohl im RAM als auch auf der Festplatte), und einige Datenstrukturen sind aufgrund größerer Zeiger und aus Effizienzgründen (dh Strukturen werden aufgefüllt, um sie an 64-Bit-Grenzen auszurichten, anstatt an 32-Bit-Grenzen) ebenfalls größer ), aber die meisten Massendaten, wie sie in einer Datenbank im RAM gespeichert sind, haben keinen merklich größeren Platzbedarf.
Die Verwendung eines 64-Bit-Builds bietet möglicherweise zusätzliche Leistung für CPU- / Speicherintensive Aufgaben, da der Code die in der CPU verfügbaren zusätzlichen (und größeren) Register verwenden kann, anstatt sich auf die weniger kleineren zu beschränken, die in verfügbar sind 32-Bit-Modus und aus Sicht des Hypervisors möglicherweise effizienter, da weniger Kontextwechsel erforderlich sind, bei denen der lange (64-Bit-) Modus aktiviert und deaktiviert wird.
Meiner Meinung nach sollten Sie sich für die 64-Bit-Option entscheiden, es sei denn, Sie verwenden ein 32-Bit-Paket, das keine 64-Bit-Version oder keinen 64-Bit-Code enthält, sodass Sie Ihre eigenen kompilieren können.
Ich würde vorschlagen, beides zu versuchen, wenn Sie Zeit haben: Installieren Sie VirtualBox auf einem Heimcomputer, wenn Sie einen 64-Bit-fähigen Computer haben, und erstellen Sie zwei 512-MB-VMs (einen mit einer 32-Bit-Installation und einen mit einer 64-Bit-Installation). Bit eins) mit dem Mix von Software, die Sie verwenden möchten. Dies gibt Ihnen einen besseren Hinweis auf jeden Unterschied, den Sie bemerken werden, als dies bei der Arbeit mit Faustregeln und Vermutungen der Fall ist.
Als Randnotiz: 4 GB sind viel Swap für eine 512-MB-Maschine, virtuell oder auf andere Weise. Wenn Sie so viel auf die Festplatte ausgelagert haben, wie Sie im RAM haben, ist es wahrscheinlich, dass die Leistung aufgrund von Swap-Thrashing (Seiten werden ständig zwischen RAM und Festplatte ausgetauscht) stark abnimmt, wenn Sie in eine Situation geraten, in der Sie 8-mal haben Ich gehe davon aus, dass so viele Speicherseiten auf der Festplatte, wie Sie im RAM haben, die VM längst zum Erliegen gebracht hat. Ein Teil dieses Speicherplatzes würde viel besser als Dateispeicher verwendet, wenn Sie die Option haben.
quelle
Es wird nicht doppelt so viel RAM verbraucht. Es ist fair zu sagen (einmal), wo hast du das gehört?
Da Sie keine ungeraden / alten Treiber verwenden, sind Sie nicht an 32-Bit gebunden. Der größte (aber immer noch winzige) Vorteil von 64bit sind größere CPU-Register. Außerdem ist ein 64-Bit-Prozessor wahrscheinlich neuer und besser, aber ich bin nicht sicher, ob 32-Bit hinterherhinken.
quelle
Es wird empfohlen, 32-Bit-RAM für weniger als 2 GB zu verwenden. Zum Beispiel Informationen von hier :
auch 32 bit empfohlen in dieser antwort
quelle