Hab lange überlegt, ob ich Chocolates Posts überhaupt kommentieren sollte, aber dann hats mir doch noch in den Fingern gejuckt.
Chocolate schrieb:
Die CPU limitiert dabei den Ansatz der PS4, da momentan fast alle Grafik-Engines CPU-lastig sind, wie auch die kommenden.
Das ist sogar nett formuliert völliger Schwachsinn.
Die Wahrheit liegt nämlich in der anderen Richtung. Der Dreh- und Angelpunkt ist der GPU (der name "Grafikprozessor" ist eigentlich schon ziemlich klingend). Die wenigsten Spiele fordern den CPU heutzutage wirklich heraus und sind hauptsächlich im Strategie-Genre wie zB einem Anno zu finden - bei Titeln wie Crysis 3 hat der CPU nicht viel zu melden, das ist Leistungssport für den GPU. Natürlich kann ein zu schwacher CPU zum Flaschenhals für einen viel schnelleren GPU werden, aber das ist bei den kommenden Konsolen eher auszuschließen.
Chocolate schrieb:
Einen eSRAM sinnvoll nutzen um Daten auszulagern, soll schmerzlicher in der Anwendung sein, als was genau?
Um genau zu sein ists im Vergleich zu Sonys unified Lösung regelrecht "a pain in the ass".
Auf der PS4 hast du mit den 8 GB (von denen effektiv 5,5 für die Entwickler zur Verfügung stehen) GDDR5 einen breiten Daten Highway, sprich Hauptspeicher. Das Äquivalent zu jenem sind bei der X1 die 8 GB DDR3 (von denen 5 für die Entwickler zur Verfügung stehen). Während die Bandbreite des DDR3 für den CPU völlig ausreichend ist (er kommt ja nicht einmal dazu das Maximum überhaupt auszunutzen und benötigt dies auch nicht), ists für den GPU, in heutigen Maßstäben, völlig unzureichend. Deshalb hat Microsoft den eSRAM ins Spiel gebracht, um die Bandbreite wieder nach oben zu bekommen.
Du hast also nun das Problem mit zwei Speichern haushalten zu müssen. Zum einen den großen aber sehr langsamen Hauptspeicher und dann den schnellen aber verdammt kleinen Companion des GPUs.
Nun kannst du den kleinen eSRAM aber nicht so handhaben wie es die Entwickler von dedizierten Grafikkarten am PC gewohnt sind, indem der breite VRAM bequem mit den für den GPU benötigten Daten vollgepackt wird. Da käme nichts gutes dabei raus, wenn man das mit dem langsamen Hauptspeicher der X1 tun würde. Es muss also der eSRAM unterstützend hinzu gezogen werden, der jetzt mit zwei Problemen zu kämpfen hat, neben der Tatsache dass mehrere Speicherpools für Entwickler immer schwieriger zu handhaben sind, als einer: 1. ist er sehr klein und 2. muss er manuell gefüllt und geflusht werden.
Das ist für die Entwickler sehr tricky und damit eine sehr unangenehme Kopfnuss. Du darfst einfach nicht den Fehler machen und den eSRAM als eine Geheimzutat der X1 ansehen, denn eigentlich handelt es sich bei ihm nur um eine Art Notnagel. DDR3 ist für den GPU zu langsam, DDR4 hat noch keine Marktreife und GDDR5 war MS zu riskant, für ihre Vision.
Chocolate schrieb:
Erstmal eine Engine zu entwerfen die sich voll auf die GPUs wirft? Ok, sollen die Entwickler mal machen. Der Aufwand lohnt sich bestimmt. Das wird wenn überhaupt nur bei den exklusiven Titeln zur Debatte stehen und bis dahin ist es noch ein langer Weg.
Nochmal: Das ist völliger Unfug.
Der Großteil aller Engines (Frostbite, Cryengine, Snowdrop, Unreal, Panta Rhei, Fox Hound, Red Engine,...) die uns für die kommende Gen präsentiert wurden, wurden am PC entworfen und für jenen ist typisch: Der GPU als Herzstück und ein ausreichend großer und schneller VRAM (GDDR5) um ihn zu füttern.
Dies, also eine potente GPU und eine schnelle Anbindung durch einen großen, unified Memory Pool, war auch der Wunsch der Entwickler.
Chocolate schrieb:
Ohne eine vernünftige CPU kann die beste GPU nichts anfangen.
Das ist richtig, jedoch stellt der CPU in den Konsolen keinen Flaschenhals da, auch wenn er natürlich gegen zB einen Intel Core i7 4770K brachialst abstinken würde. Selbst ein Ungetüm von diesem Format beißt sich aber an aufwändigeren Physik-Berechnungen (eine der Königsdisziplinen, die CPUs im Zuge einer Spielengine zu erfüllen haben) die Zähne aus. Das ist der Punkt an dem GPUs interessant werden. Sie verfügen über den Vorteil, dass sie sowohl eine höhere Speicheranbindung haben als auch eine höhere Rechenleistung, durch eine extreme Vielzahl an parallel ausgeführten Rechenoperationen. Der Nachteil dessen ist die mit der Parallelisierung verbundene Komplexität.
Seitdem man dieses Potential erkannt hat, ging man dazu über die vorher recht eingeschränkten Shader frei programmierbar zu gestalten. GPGPU ist in der Forschung gang und gäbe (auch wenn da wieder ganz eigene Typen von GPUs zum Einsatz kommen, die aufgrund spezieller Speicher über eine stark erhöhte Genauigkeit verfügen und auch schweineteuer sind), ist hier gar nicht mehr wegzudenken und eigentlich nur mehr eine Frage der Zeit, bis das auch zum Standard in der Spieleindustrie wird. Ein populäres, schon länger vorhandenes Beispiel für GPGPU in der Spieleentwicklung ist zB nVidias proprietärer PhysX-Baukasten.
Chocolate schrieb:
Deswegen sagte ich ja, dass ich die Lösung bei der Xbox One als ausgewogener empfinde. CPU/GPU Ratio stimmt.
In seiner Basis derselbe CPU, der sich im wesentlichen durch einen nur ~6% höheren Takt und einem schnelleren Bus zum Hauptspeicher gegenüber der PS4 unterscheidet. Beide sind cache-coherent, sprich der GPU sieht immer welche Daten der CPU gerade hält ohne mittels Cache Flush synchronisieren zu müssen. Die X1 hat hier einen 30 GB/s Bus und die PS4 einen 20 GB/s Bus, wobei die PS4 im Zuge ihres GPGPU Fokus noch ein Feature bereithält. Wenn der CPU mal eben nachsehen will was der GPU sieht, dann muss eigentlich ein Cache Flush stattfinden, nicht so aber bei der PS4. Bei jener können individuell Cach Lines selektiert werden, während bei der X1 der gesamte GPU cache geflusht werden muss.
Um eine Relation zum Bus zu bekommen: Ein neuer i7 packt zum Vergleich max 25.6 GB/s und das ist für jenen alles andere als ein Flaschenhals, trotz seiner enormen Rechenleistung, verglichen mit dem Jaguar.
Der Unterschied zwischen den beiden (X1 und PS4) CPUs ist vergleichbar gering, im Gegensatz zum Unterschied auf GPU Ebene.