Einzelnen Beitrag anzeigen
Alt 26.11.2006, 16:42   #34
SilverCircle
Veteran
 
Registriert seit: 03.10.2006
Beiträge: 373


Standard

Zitat:
Original geschrieben von DonAnselmo
[b]Hallo Alex ( SilverCircle )
Auch wenn es immer wieder leute gibt, die es nicht kapieren oder nicht kapieren wollen
So isses halt. Wenn eine software nicht so läuft, wie sich der user das vorstellt oder erwartet, dann hat der Programmierer Mist gebaut

Leider ist es nicht immer so einfach, und die Behauptung, "der FSX wäre mies programmiert" ist grundsätzlich mal Quatsch. Das Einzige was man MS vorwerfen *kann* (und dem ich mich anschließen kann) ist die Tatsache, dass sie die Entwicklung der hardware (insbesonders, die Entwicklung auf dem CPU Sektor) falsch eingeschätzt haben. Sie dachten wohl, die Geschwindigkeit einzelner CPU Kerne würde weiterhin so rasant ansteigen und das war eben nicht der Fall. Und ja, das war eine grobe Fehleinschätzung, denn dass die Entwicklung in die Richtung von multicore gehen wird, war schon vor Jahren irgendwie klar.

Genau deshalb nutzt der FSX mehrere CPUs bzw. mehrere Kerne sehr schlecht aus, weil er immer noch das "alte" design verfolgt, welches nur relativ unbedeutende Dinge, wie z.b. das Nachladen von Texturen, in zusätzliche threads auslagert. Hier ginge *deutlich* mehr, denn so könnte man z.b. die Berechnugen für den AI traffic (und noch einiges mehr) ebenfalls auslagern.

Solche Dinge (exzessives multithreading) sind bei einem Spiel allerdings auch nicht trivial, und jeder der Ahnung hat, weiß wohl auch, wie komplex eine Anwendung werden kann, wenn es darum geht einzelne Aktionen zu parallelisieren. Bei einem Web- oder Datenbankserver ist das nicht so schlimm, denn es interessiert keinen ob thread #25 mal ein paar Mikrosekunden länger für die Abarbeitung seiner Aufgabe braucht. Bei einem game ist das nicht ganz so einfach, denn das Wichtigste ist immer noch eine *konstante* performance.

Die berühmten "blurries" sind genau der Effekt, der auftreten kann, wenn ein Hintergrundthread seine Sache nicht schnell genug erledigt (aus welchen Gründen auch immer). Bildet man das auf andere Dinge ab (z.b. AI Flugzeuge, autogen oder z.b. die Berechnung der meshdaten für das Terrain), so kann man sich ungefähr vorstellen, welche Schwierigkeiten entstehen können, wenn man Einzelaufgaben in extra threads auslagert.

Nichtsdestotrotz, MS wird auch das angehen *müssen*, ansonsten können sie in Zukunft auf noch mehr eye candy oder andere performancefressende features gleich mal verzichten.
____________________________________
Alex
No bumps, no bangs, Concorde.
SilverCircle ist offline   Mit Zitat antworten