PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : DX11 GraKas und EMULATOREN


Nevermore4ever
2009-06-03, 15:39:25
Da die Grafikkarten immer besser programmierbar werden und mit DX11 Compute Shader ins Haus stehen...

...könnte das die Entwicklung von Emulatoren begünstigen? Z.B. für die PS3? Oder auch für zukünftige Konsolen?

Der Gedanke dabei ist, dass GPUs die zu emulierenden Aufgaben besser schultern können. Allerdings - stimmt das denn überhaupt?

Wer hat Ahnung und traut sich, zu spekulieren? Oder mal mit 'nem PS3-Emulator anzufangen ;D.

h'lore
2009-06-06, 03:34:00
Hat die Erweiterung der Programmierbarkeit aktueller GPUs denn zu einem Durchbruch in der Emulation früherer Konsolen geführt?

Nein. Selbst die Emulation einer Playstation 2 stellt heutige High-End-Hardware trotz immenser Rechenleistung noch vor nicht unbedeutende Probleme. Die Fähigkeiten der Emotion Engine in der PS2 unterscheiden sich sehr stark von denen eines PCs. Was auf der PS2 vergleichsweise gut funktioniert, lässt sich auf dem PC gar nicht direkt abbilden und muss aufwändig "nachgestellt" werden.

Die Erweiterung der durch SM4 gegebenen Rahmenbedingungen ist in dieser Hinsicht eher ein Tropfen auf den heißen Stein. Das Verlagern sämtlicher Vorgänge auf die Grafikkarte sollte auch nicht so einfach möglich sein, wie du es dir vielleicht vorstellst. Die Playstation 2 ist natürlich auch ein Extremfall, da die Stärken der Architektur an eigenartig anmutenden Stellen plaziert sind, während an anderen Stellen mit jedem Herstellungscent gegeizt wird.

Aber auch für andere Konsolen gilt, dass eine Emulation auf Hardware einer nicht um Größenordnungen höheren Leistungsklasse immer nur unbefriedigende Ergebnisse erbringen wird. Selbst die Konsolenhersteller haben ja mit Problemen zu kämpfen, wenn es um das Emulieren der Vorgängerkonsole geht, obwohl man den Nachfolger unter diesem Gesichtspunkt entwickelt hat und sämtliche Spezifikationen bekannt sind.

Nightspider
2009-06-06, 12:35:07
Einen Emulator für die PS3 wird man in den nächsten 5 Jahren jedenfalls nicht sehen, ich tippe auf 5-10 Jahre und keiner 100%igen Kompaibilität.

RavenTS
2009-06-06, 14:38:11
Wie sieht es mit der xbox aus, die soll doch technisch "näher" am PC sein.?!

Nakai
2009-06-06, 18:41:11
Wie sieht es mit der xbox aus, die soll doch technisch "näher" am PC sein.?!

Eigentlich stimmt das auch nicht. Das einzigste, was die PS3 hat, sind die SPUs des Cells, welche wohl keine gute Kompatibilität gewährleisten.


mfg Nakai

Gast
2009-06-06, 20:25:28
Wie sieht es mit der xbox aus, die soll doch technisch "näher" am PC sein.?!In der Tat stelle ich mir die Emulation einer Xbox bedeutend einfacher vor, als die der letzten beiden Playstations. Dennoch ist es nicht so einfach machbar und vor allem höchst ineffezient. Der sinnvollere Weg ist definitiv die Anpassung der Software auf die Zielplattform. Heutzutage wird das bei den meisten Spielen sowieso gemacht. Das funktioniert deshalb so gut, da man bereits die ersten Entwicklungsschritte mit einer geplanten Multiplattformfähigkeit im Hinterkopf durchläuft. Zahlreiche Middleware erleichtert dieses Vorgehen auch für weniger große Studios.

Zu dem Zeitpunkt, zu dem man eine bestimmte Spielkonsole mit dann aktueller PC-Hardware einwandfrei emulieren kann, ist diese meist schon für sehr niedrige Beträge zu erwerben. Wenn man den Wunsch, die entsprechenden Exkluisivtitel zu genießen, nicht unterdrücken kann, greift man doch besser zur Konsole. Emulatoren werden nie an das Spielerlebnis herankommen, dass die Entwickler für ihre Software vorgesehen haben. Als Machbarkeitsstudie sind sie aber dennoch hochinteressant.

Crazy_Chris
2009-06-06, 20:30:22
Das Problem ist wohl viel eher das aktuellere Konsolen so komplex sind das man sie ohne richtige Spezifikation nicht einfach nachbauen kann.

Nakai
2009-06-06, 20:37:11
Das Problem ist wohl viel eher das aktuellere Konsolen so komplex sind das man sie ohne richtige Spezifikation nicht einfach nachbauen kann.

Naja, das würd ich nicht sagen. Die Grafikberechnungen wird durch die API festgelegt, welche im Grund nicht anders als beim PC ist (Ja es gibt ein paar Sachen, die trotzdem nicht leicht von der Hand gehen).
Die Architektur ist bei beiden PPC. Nur die VMX-Einheiten und die SPEs machen da mir Kopfzerbrechen.


mfg Nakai

Gast
2009-06-06, 21:44:53
Was Chris da sagt, ist schon nicht ganz verkehrt. Damit ein Emulator halbwegs vernünftig funktioniert, muss er sich in gegebenen Situationen genau wie die echte Konsolenhardware verhalten. Allein durch Beobachten kann man aber nur schwerlich Erkentnisse über alle möglichen Zustände gewinnen. Die Kenntnis der Spezifikation erleichtert die Arbeit hier enorm. Dass die Emulation der Vorgängerkonsolen auf Nextgen-Konsolen besser funktioniert als die Emulation auf PCs, die ein vielfaches der Leistung besitzen, bestätigt das nur.

Selbst wenn man den problemlosen Ablauf eines Spiels sicherstellt, kann man nicht einfach davon ausgehen, dass die restliche Software auch läuft. Man weiß schlicht nicht, wie sich die Hardware in den Situationen verhalten müsste, die im erfolgreich laufenden Spiel gar nicht vorkommen.

Diese Problematik sorgt für auftretende Fehler. Dazu die Tatsache, dass sich nicht alle Operationen einer Konsolenarchitektur X auch auf einen aktuellen PC übertragen lassen, was die Geschwindigkeit ganz böse in den Keller drückt. D3D11 wird da genauso wenig ändern, wie es neue API-Versionen in der Vergangenheit getan haben.

Man sollte sich viel eher darauf konzentrieren, die Stärken der vorhandenen Architektur auszunutzen, als den Versuch zu starten, andere, zum Teil ziemlich verhunzte Architekturen mit viel Rechenaufwand stinklangsam nachzubilden.

Gast
2009-06-06, 22:10:00
Naja, das würd ich nicht sagen. Die Grafikberechnungen wird durch die API festgelegt, welche im Grund nicht anders als beim PC ist (Ja es gibt ein paar Sachen, die trotzdem nicht leicht von der Hand gehen).
Die Architektur ist bei beiden PPC. Nur die VMX-Einheiten und die SPEs machen da mir Kopfzerbrechen.


mfg NakaiUnd wo hatte er jetzt Unrecht?

"Das Problem ist wohl viel eher das aktuellere Konsolen so komplex sind"

du: "Nur die VMX-Einheiten und die SPEs machen da mir Kopfzerbrechen. "

???

Gast
2009-06-06, 22:17:15
Was Chris da sagt, ist schon nicht ganz verkehrt. Damit ein Emulator halbwegs vernünftig funktioniert, muss er sich in gegebenen Situationen genau wie die echte Konsolenhardware verhalten. Allein durch Beobachten kann man aber nur schwerlich Erkentnisse über alle möglichen Zustände gewinnen. Die Kenntnis der Spezifikation erleichtert die Arbeit hier enorm. Dass die Emulation der Vorgängerkonsolen auf Nextgen-Konsolen besser funktioniert als die Emulation auf PCs, die ein vielfaches der Leistung besitzen, bestätigt das nur.

Selbst wenn man den problemlosen Ablauf eines Spiels sicherstellt, kann man nicht einfach davon ausgehen, dass die restliche Software auch läuft. Man weiß schlicht nicht, wie sich die Hardware in den Situationen verhalten müsste, die im erfolgreich laufenden Spiel gar nicht vorkommen.

Diese Problematik sorgt für auftretende Fehler. Dazu die Tatsache, dass sich nicht alle Operationen einer Konsolenarchitektur X auch auf einen aktuellen PC übertragen lassen, was die Geschwindigkeit ganz böse in den Keller drückt. D3D11 wird da genauso wenig ändern, wie es neue API-Versionen in der Vergangenheit getan haben.

Man sollte sich viel eher darauf konzentrieren, die Stärken der vorhandenen Architektur auszunutzen, als den Versuch zu starten, andere, zum Teil ziemlich verhunzte Architekturen mit viel Rechenaufwand stinklangsam nachzubilden.
Völliger Blödsinn!
Der Emulator muss natürlich in der Lage sein das nachzubilden und gegeben auch Zusätze anbieten. Spiele auf den jeweiligen Plattformen nutzen +ber die Jahre die Konsole nicht gleich und vor allem nicht nach den selben Schemata aus, das ist hoffentlich allen hier bewusst.

Einer Nachbildung kommt man leider nicht drumrum und grade deswegen sehe ich da in den nächsten Jahren Schwarz für die Emu-Community, da hier einfach irgendwann der Aufwand der geleistet werden muss, nicht mehr gegeben sein wird.

MFG Carsten

Gastrologe
2009-06-06, 22:48:10
XBOX360 -> G5 Quad 2.5GHz, ATI >=2900, 4GB RAM, XBOX360 SDK als Emulator

Das wäre noch halbwegs machbar.
Aber warum dann nicht direkt eine XBOX360 kaufen?

Ansonsten könnte man rein performancetechnisch noch die Wii emulieren, da nicht ganz so weit vom Gamecube entfernt.

Die PS3 kann man in nächster Zeit nicht emulieren.

Zur Berechnung auf Grafikkarten:
Die Stärke der GPU liegt in der schnelleren Bearbeitung von parallelisierbaren Daten. Wenn es nichts zu parallelisieren gibt, dann bringt das Ganze also nichts. Und auch wenn ein Emulator 10% seiner Daten parallelisieren könnte, dann bringt das immer noch keinen nennenswerten Unterschied. GPU's sind kein Allheilmittel, falls dieser Eindruck durch die Marketingabteilung von Nvidia entstanden sein sollte.

Ganon
2009-06-06, 23:16:45
Bei der PS3 dürfte der Kopierschutz ein Problem werden ;)

Nakai
2009-06-07, 18:38:06
Und wo hatte er jetzt Unrecht?

"Das Problem ist wohl viel eher das aktuellere Konsolen so komplex sind"

du: "Nur die VMX-Einheiten und die SPEs machen da mir Kopfzerbrechen. "

???

Gegenfrage: Was ist daran komplex? Beides sind SIMD-Einheiten, welche sich von den Einheiten einer GPU nicht so sehr unterscheiden.


mfg Nakai

Coda
2009-06-07, 18:48:46
Bei der PS3 dürfte der Kopierschutz ein Problem werden ;)
Soweit ich weiß ist der Programmcode nicht verschlüsselt auf der Blu-ray, aber ich könnte mich täuschen.

Die Konsole verweigert so weit ich weiß nur das abspielen nicht signierter Datenträger.

=Floi=
2009-06-07, 19:26:04
es werden ja schon bei der ps2 einfach die ganzen konsolen mit bios emuliert. das ist auch imho der beste weg und sollte reibungslos funktionieren.
ansonsten ist dieser thread hier schon ein wenig sinnfrei, da man das ganze eher in einer geschlossenen box laufen lassen wird als direkt so eine architektur nachzubauen. rechenleistung zu sparen ist sowieso nicht das ziel dabei.

Coda
2009-06-07, 19:30:24
Was für eine "geschlossene Box" soll das sein?

_DrillSarge]I[
2009-06-07, 19:52:52
Was für eine "geschlossene Box" soll das sein?
eine xbox/playstation :biggrin:

sowas nachzubauen ist doch sinnfrei. die kosten sind sicher höher als bei originalhardware (gerade xbox). von diversen problemen (hw/sw) auch mal abgesehen.

Gast
2009-06-07, 20:14:32
warum sollte das nicht funktionieren. für die ps1 gibt es einige und einen der sogar recht brauchbar ist. hatte so einen emu mal zu p4 zeiten am laufen. die performance war schlecht, aber es funktionierte. :D heutige rechner sollten eine ps1-emu schon packen. für die ps2 wird es wohl noch einige jahre dauern.

http://www.epsxe.com/

imo der beste brauchbare für die ps1.

=Floi=
2009-06-07, 20:40:59
eine sandbox. so wie zB auch dosbox arbeitet und einfach das ganze zielsystem emuliert. bei den ps2 emulatoren gibt es wohl auch solch einen ansatz, da man bei diesen ein orginal bios braucht.
so umgeht man auch irgendwelche nachbauten von ®© geschützten teilen

kevsti
2009-06-07, 21:25:08
btw. der Wii Emulator geht atm. schon ziemlich gut - noch nicht Perfekt, aber einige (eigentlich sogar recht viele) Titel sind durchaus mit guter Performance und ohne grobe Fehler zockbar

ottoman
2009-06-08, 13:53:37
ich spiele ab und zu ps2 games mit einem emulator (pcsx2) und kenne mich damit auch ein wenig aus. die ganze sache ist wirklich hochkomplex und die entwickler sitzen da z.t. schon seit jahren dran und programmieren fleissig daran herum. trotzdem ist das ganze noch relativ weit weg von "funktioniert perfekt".
ein großes problem ist da oft die performance. die architektur der ps2 läßt sich nur sehr schlecht parallelisieren, bei der ps3 könnte es ähnlich sein. in dem punkt hat "Gastrologe" recht, da bringt eine dicke dx11 grafikkarte eigentlich nichts sondern nur ein schneller prozessor. im fall von pcsx2 wäre zb selbst ein quadcore verschwendet, empfohlen wird dort ein dualcore mit mindestens 4ghz... eben weil vieles voneinander abhängig ist und sich kaum parallelisieren läßt.

wie eine emulation der ps3 aussehen soll, ist noch ziemlich unklar. der entwicklungsaufwand wäre extrem hoch und die benötigte pc hardware kommt evtl erst in 10 jahren auf den markt.
bei der xbox(360) ist die sache wohl einfacher. für diese konsolen gibt es einfach keine "richtigen" emulatoren, weil so ziemlich jedes brauchbare xbox spiel auch auf dem pc erscheint bzw erschienen ist. deshalb wird da relativ wenig energie in einen emulator gesteckt. jedenfalls ist das meine theorie :)

edit: und ja, die gamecube/wii emulation kann sich auch sehen lassen, da ist schon wirklich viel möglich!

Gast
2009-06-11, 23:12:05
Völliger Blödsinn!
Der Emulator muss natürlich in der Lage sein das nachzubilden...Wenn man ein anderes System denn emulieren will, natürlich. Meine Aussage war aber eher so gemeint, dass ich keinen Bedarf für die Emulation von irgendwelchen vermurksten Konsolen-Architekturen auf dem modernen PC sehe. Außer vielleicht als Machbarkeitsbeweis. Dass man das Verhalten einer anderen Hardware möglichst genau nachbilden muss, wenn man sie emulieren möchte, ist eine Selbstverständlichkeit und wurde von mir auch wenige Zeilen vorher noch geschrieben.