Du guckst leider mit sehr ungenauen Tools hin und "rätst" dir etwas zurecht
Im einzelnen:
Zum einen sehen wir das World of Warcraft, wider erwarten, alle vier Kerne des Quad-Core Prozessors (auch wenn nicht wirklich gleichmäßig) ausnutzt, obwohl häufig etwas anderes behauptet wird.
Schaut man ganz genau hin kommt man zu dem Ergebnis, dass die Multicoreunterstützung von WoW im wesentlichen "aufgepropft" wurde.
Es gibt -gaaaanz platt formuliert- immer noch einen Mainthread der die Hauptarbeit macht und einige Subthreads, die Nebenrechnungen und Addons machen.
Das Problem ist nun, dass die Threads über die einzelnen CPU Kerne (oder schlimmer noch über logische CPU Kerne also auch Hyperthreadingmist) wandert (von Windows gesteuert).
Der Nachteil daran ist, dass jeder Kernwechsel ein komplettes umkopieren des CPU Cache inkl. Neueinlesen der Cache Daten erfordert, was insbesondere beim Wandern vom physikalischern Kern auf einen Hyperthreading"kern" dummerweise zu einer erheblichen Performanceverschlechterung führt.
Fakt ist: Auf einem System mit 2 echten(!) Kernen ohne(!) Hyperthreading ist die CPU Nutzung am besten, mit zunehmenden Kernen wirds eher schlechter.
Nachvollzogen hab ich das Ganze an mittlerweile 6 Rechnern, denen ich per Bios Setting einzelne Kerne abklemmen kann (geht bei Phenom II System sehr gut).
2 Kerne (und ggf. Übertakten) --> 10-15 FPS im Raid mehr, bei ansonsten unverändertem System als mit 4 Kernen.
Fazit CPU: 2 Kerne mit Hoher Frequenz > Mehr Kerne mit geringerer Frequenz > Hyperthreading Mist
Da zu diesem Zeitpunkt der WoW Prozess nur ca. 950mb verwendet (und somit noch ca. 5 GB frei sind)
Falsch. Als 32bit Prozess kann der Client unter egal welcher Windows Version maximal 4gbyte RAM (genauer 3,56) adressieren.
--> http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778%28v=vs.85%29.aspx
Selbst unter einem 64bit OS stehen dir max 3,56gb pro 32bit Prozess zur Verfügung
Auch wenn ich, aufgrund der Fehlenden Hardware und mangels Einsicht in den World of Warcraft Quelltext, nur begründete Vermutungen anstellen kann, drängt sich der Verdacht auf, das die Bildrate (zu mindestens auf guten Systemen) nicht nur durch die Leistung der verbauten Hardware (wie es eigentlich sein sollte) sondern vielmehr durch die World of Warcraft Engine und in ihr durch einen möglichen Fehler (teilweise stark) eingeschränkt bzw beeinflusst wird
Natürlich beschränkt die Engine. Ist in ihren Kernfunktionalitäten nunmal auch über 8 Jahre alt (Releasedatum + Entwicklungszeit).
Damals gab es kein Hyperthreading, kein 64bit OS (für Heimanwender), keine Multicore Systeme, etc. etc. etc.
Allerdings merkt man durchaus Unterschiede, wenn man Hardware angepasst an den Einsatzzweck kauft. Einen schnellen 2 Kerner ohne Hyperthreading verwenden bringt deutlich mehr als einen 4 Kerner. Erst recht, wenn letzterer niedriger taktet. Die Frage, ob man selbst seine Hardware auf ein einziges Spiel(!) hin kaufen möchte muss sich aber jeder selbst stellen.
Was die Performanceprobleme bei Ultraxion angeht, hat Blizz ja selbst schon zugegeben, dass das Design insbesondere des grünen Buffs absolut bescheuert ist (und auch schon Anpassungen vorgenommen). Das Problem ist, dass du hier mit exponentiell steigendem Berechnungsaufwand konfrontiert ist. Grüner Buff heisst halt: Initialheilung auswerten, diesen Wert nehmen und auf alle Member in Range aufteilen. Hast du da nun ein Segenswort: Refugium oder einen Heilenden Regen oder ein Erblühen liegen, muss jeder einzelne Tick der Heilfläche (seit Hotfix nur noch, wenn > 1500) ausgewertet und einzeln auf jedes Raidmitglied kopiert werden. Nimm einfach mal die Zeilenzahl vom Combatlog und vergleich die mit einem Combatlog eines belibeigen anderen Bossfights gleicher länge, dann weisst was ich meine )
Kommen jetzt noch Addons hinzu, die das ganze Auswerten (Recount/Skada, Bossmods, Combattextanzeige,.....) wollen die natürlich auch noch fröhlich rumrechnen.
Das Problem ist, dass du hier einfach früher oder später auch an die Grenzen des Betriebssystems stößt.
Um hier die Leute nicht zu langweilen verweise ich mal auf 2 schöne Technet Blogs zum Thema:
http://blogs.technet.com/b/markrussinovich/archive/2009/09/29/3283844.aspx
und da dann inbesondere den Part "Threads".
Zugrundeliegend ist natürlich -und da gebe ich dir vollkommen recht- die für heutige Verhältnisse(!) unsaubere Programmierung.
Das wird mit dem 64bit Client nicht besser werden, aber immerhin liegen die Limits hinsichtlich Handles, Threads und zugehöriger Speicherlimits bei einem 64bit Prozess naturgemäß deutlich höher, was in einer sichtbar besseren Performance resultieren wird. Bevor wir da an die Grenzen stoßen, dürfte noch einige Zeit ins Land gehen (auch wenn Windows hier schon wieder künstlich begrenzt But who cares? 640k is enough :-) ).