Virtualisierung: 64-Bit oder 32-Bit?

7

Ich werde Ubuntu 10.04 Server in einer virtuellen Maschine installieren und MySQL und Lighttpd darauf ausführen.

Gibt es Vor- oder Nachteile zwischen 64-Bit- und 32-Bit-Virtualisierung, mit Ausnahme des 4-Gigabyte-Speicherlimits auf 32-Bit-Computern?

Ich benutze Virtualbox.

Jonathan Egerton
quelle
Was ist Ihr Host, 32 oder 64 Bit?
John Gardeniers
Es ist Windows 7 64-Bit.
Jonathan Egerton

Antworten:

5

Gibt es Vor- oder Nachteile zwischen 64-Bit- und 32-Bit-Virtualisierung, mit Ausnahme des 4-Gigabyte-Speicherlimits auf 32-Bit-Computern?

Die Ausführung in einer 64-Bit-Umgebung bietet eine Reihe von Vorteilen. Das größte Problem ist, wie Sie sagen, die Fähigkeit, große Speichermengen zu adressieren. Während Sie Ihren 32-Bit-Kernel dazu bringen können, mehr als 4 GB RAM zu adressieren, sind einzelne Prozesse immer noch auf 4 GB beschränkt. Dies betrifft nicht nur den "realen RAM", sondern den gesamten virtuellen Adressraum. Dies ist ein besonderes Problem, wenn Anwendungen planen, den virtuellen Speicher über mmap () oder andere Techniken umfassend zu nutzen. Der Lack- http-Cache ist ein Paradebeispiel dafür. Hier und anderswo besprochen .

In diesem Artikel von AMD (Warnung: PDF) werden 64-gegen-32-Bits ausführlich beschrieben.

Es gibt theoretische Leistungsvorteile für 64-Bit-Systeme, die durch mehr Register, breitere Speicherabrufe (dh mehr gelesene Bits pro Lesevorgang) usw. verursacht werden. Die Daten, die ich bisher gesehen habe, deuten jedoch darauf hin, dass eine Leistung von 32 vs. 64 Bit sind derzeit kein wichtiger Grund, sich für das eine oder andere zu entscheiden.

Larsks
quelle
Es kommt wirklich auf die Anwendung an. MySQL lief auf 64-Bit mit der gleichen Hardware viel besser (ich höre es, weil es intern viele 64-Bit-Ganzzahlen verwendet, ich habe nie nach mir selbst gesucht). Wenn eine Anwendung> 2 GB RAM verwendet, ist sie normalerweise auch schneller als 64-Bit. Die meisten Anwendungen verwenden nicht so viel Speicher oder 64-Bit-Ganzzahlen. Für diejenigen, die es tun, ist es viel schneller.
Reece45
@ AlReece45 Das habe ich gesagt. Einige Anwendungen profitieren von 64-Bit-Architekturen, andere weniger. Ich konnte keine guten Daten zu Leistungsunterschieden zwischen den beiden Architekturen finden. Wenn Sie sich der tatsächlichen Zahlen bewusst sind, würde ich einen Zeiger begrüßen, da es viele wirklich schlechte Informationen zu geben scheint, die von Leuten propagiert werden, die Dinge sagen wie "32 Bit sind schneller" oder "64 Bit verbrauchen mehr Speicher". usw., ohne solche Aussagen zu sichern.
Larsks
3

Der 32-Bit-Gast benötigt weniger Speicher. Ich verwende normalerweise 32-Bit-Gäste auf meinem 64-Bit-Host, es sei denn, ich habe einen bestimmten Grund. Wenn Sie den hohen Speicher benötigen, gehen Sie 64.

Antonius Bloch
quelle
1

Eine Überlegung sind die RAM-Anforderungen der virtuellen Maschine. Sie werden feststellen, dass MySQL und Lighttpd in 64-Bit-Ubuntu mehr Speicher belegen als in 32-Bit-Ubuntu.

Daher verwende ich gerne 32-Bit-Installationen auf kleinen VMs mit wenig RAM, z. B. 512 oder weniger. Diese Konfigurationen im unteren Bereich werden häufig bei vielen VPS-Anbietern wie Linode oder Slicehost angezeigt.

CT.
quelle
0

Die einzigen Benchmarks, die ich gesehen habe, um eine echte Tugend für 64-Bit-Code zu zeigen, waren MySQL (und DB im Allgemeinen). Dies lief auf einem Sun Ultra 5 (im RISC-Land ist 32-Bit fast immer etwas schneller). Wenn es auf die Leistung ankommt, kann dies einen echten Unterschied bewirken.

Ein weiterer Punkt, sagt VMware, ist, die VM so einzustellen, dass sie eine CPU verwendet, es sei denn, Sie benötigen mehr Leistung, da diese im Allgemeinen schneller ist (es entsteht Overhead durch mehrere virtuelle CPUs).

Ronald Pottol
quelle
Haben Sie einen Link zu diesen Benchmarks?
Larsks
osnews.com/story/5768 für die SPARC-Benchmarks. Ich fand den Vorteil größer.
Ronald Pottol