![](doesntexists.jpg) |
Autor |
|
Jens Kraft
![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif)
![](images/avatars/avatar-520.jpg)
Dabei seit: August 2006
Herkunft:
4457 Beiträge |
|
Performancezuwachs in GPL durch VM | |
Man kann zum BEsipsiel unter Win7 eine Virtual MAchine installieren welche ien PC innerhalb des PCS ist und zb XP genau simuliert, falls es inkompatibilitäten gibt.
Die Frage ist nun: läuft die VM unter allen kernen? denn soweit ich weiss kann sie einen Kern simulieren. Da rome total war von 2001 nur einen Kern unterstützt hätte ich einen riesigen PERFORMANCEzuwachs.
Genauso unter GPL.
ISt es also möglich? Klar dass wenige Prozent abfallen, aber es wäre immernoch eine Steigerung von 200% und damit könnte man wunderbar auch CPUintensive strecken fahren. ich habe ab und an einen frame drop, der MUSS weg.
gleiches gilt für die radeon grafikkarten. Die virtual machine unter HIGH performance würde somit nicht mher das problem des "grafikkarte ist im 2d modus" auftreten lassen.
Wissen und Meinungen bitte dazu!
|
|
28.12.2009, 15:26 |
|
Herwig_Henseler
![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif)
![](images/avatars/avatar-564.gif)
Dabei seit: Mai 2004
Herkunft: Großenkneten, zwischen Oldenburg und Bremen
1119 Beiträge |
|
Deine Vorstellung ist also, dass eine Virtuelle Maschine einem Programm, welches nur eine CPU, auf magische Weise die Leistungsfähigkeit zweier CPUs zur Verfügung stellt? Sorry, so funktioniert das nicht
Klar können die CPUs durchgeschleift werden. Aber das Programm in der Gastumgebung muss dies auch explizit nutzen können.
Man gewinnt also keine Leistung durch die VM, es geht sogar in Sachen CPU-Leistung geringfügig Leistung verloren. Von der 3D-Leistung will ich gar nicht mal reden, da geht gewaltig Leistung verloren. Aber dafür setzt man virtuelle Maschinen ja auch gar nicht ein.
Herwig
|
|
29.12.2009, 21:36 |
|
Jens Kraft
![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif)
![](images/avatars/avatar-520.jpg)
Dabei seit: August 2006
Herkunft:
4457 Beiträge |
|
"Deine Vorstellung ist also, dass eine Virtuelle Maschine einem Programm, welches nur eine CPU, auf magische Weise die Leistungsfähigkeit zweier CPUs zur Verfügung stellt? "
Ich hatte dazu eine Frage gestellt (Weil ich es nciht weiß).
Was meinst Du mit obigem Satz? (Leider fehlt das Verb)
ICh miene nicht "eine CPU", sondern einen CPU Kern.
Die Frage ist, ob die VM in 4 Kerne eingebettet ist und eine virtuelle CPU (mit ienem Kern) zur Verfügung stellt. Dass ein wenig Leistung durch die EInbettung verloren geht ist kalr. aber 4 Kerne mit ein Paar Prozent Abstrich sind immernoch mehr als die LEistung eines kerns.
|
|
29.12.2009, 21:53 |
|
Herwig_Henseler
![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif)
![](images/avatars/avatar-564.gif)
Dabei seit: Mai 2004
Herkunft: Großenkneten, zwischen Oldenburg und Bremen
1119 Beiträge |
|
Eine VM virtualisiert Ressourcen. Einfach ausgedrückt: Sie gaukelt dem Gastsystem Ressourcen zu.
Beispiel. Das Gastsystem glaubt, es schreibt direkt Blöcke auf eine Festplatte. Tatsächlich existiert diese Festplatte nicht real, sondern es ist eine Datei des Wirtssystems. DIe Programme, welche im Gastsystem laufen, merken davon nichts.
Die Ressource "CPU" kann ebenfalls komplett virtualisiert werden, dann gaukelt man dem Gastsystem eine komplett andere CPU vor. Beispiel: Auf dem Mac kann ich Programme laufen lassen, welche für die PowerPC-CPU geschrieben wurden, obwohl in meinem Mac eine Intel-CPU mit komplett anderem Befehlssatz steckt. Dann spricht man allerdings nicht von einer Virtualisierung sondern von einer Emulation. Dabei geht jedoch sehr viel Leistung verloren (Faktor 2 bis 20(!)).
Bei einer virtuellen Maschine wird deshalb die CPU nicht virtualisiert (ich erspare mir hier die Feinheiten der wenigen CPU-Befehle, welche doch abgefangen werden müssen). Habe ich 2 Kerne, so sieht das Gastsystem ebenfalls 2 Kerne (wenn ich ihm nicht einen Kern vorenthalte). Dein Vorstellung, dass im Gastsystem "eine" CPU erscheint, welche die "Power" von 2 realen Kernen hat, ist leider nur ein Wunsch.
GPL benutzt nur einen Kern. Ein Programm, welches mehrere Kerne nutzt, muss seine Aufgaben explizit auf mehrere Kerne verteilen (i.allg. durch multithreading). Das muss beim erstellen des Programmes berücksichtigt werden. Und das ist leider keine einfache Aufgabe, sonst würde es jeder tun.
Herwig
|
|
29.12.2009, 23:45 |
|
Jens Kraft
![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif) ![](images/starGold.gif)
![](images/avatars/avatar-520.jpg)
Dabei seit: August 2006
Herkunft:
4457 Beiträge |
|
Ok, dass die Emulation einer anderen CPU so viel LEistungsverlust bedeutet habe ich nciht gewusst. Dadurch bleibt einem Schönes leider "erspart".
Danke Herwig!
|
|
30.12.2009, 12:04 |
|
|
Read-only archive of the EOLC forum powered by: Burning Board 1.1.1b © 2002 WoltLab GbR
|