wsippel
L20: Enlightened
- Seit
- 15 Mai 2006
- Beiträge
- 25.225
Hazuki,
Physik ist nicht General Purpose. Das ist es ja gerade. Physik funktioniert immer sehr ähnlich, egal, ob Du nun Ageia, Newton, Havok oder ODE verwendest. Damit kann es problemlos in Hardware gegossen werden, und das ist immer effizienter. Natürlich hängt es von der Implementierung ab, keine Frage. Aber, nur mal um bei dem Beispiel des Sharcs zu bleiben, welches ich angeführt hatte: Auch für Audio-Processing gibt es verschiedene Möglichkeiten, und verschiedene kommerzielle, hochgezüchtete Engines für General Purpose CPUs, aber einem AD Sharc kann keine das Wasser reichen. Dazu ist ein Sharc auch sehr viel günstiger und Energie-effizienter, als eine CPU zu verwenden.
Zum Flaschenhals bei der Xbox sage ich jetzt erstmal nix. Das würde zu weit führen, und ich habe keine verständlichen Beispiele an der Hand. Was auf jeden Fall klar sein sollte, ist, dass Du, je mehr Du über den Bus pumpst, zunehmend Latenz- beziehungsweise Timingprobleme bekommst. Abgesehen davon, die Angaben zum Durchsatz sind Burst-Werte, die Du effektiv nie nutzen kannst. Die Bandbreite wird in vielen Fällen ausreichen, setzt aber sehr effiziente Programmierung vorraus - etwas, was man bei Spielen nur sehr selten findet.
Der eDRAM für den Cube wurde auch von NEC hergestellt, und kam ebenfalls von ATI/ ArtX.
Es ist eine konsequente Weiterentwicklung des eDRAMs beim Gamecube, und wie der eDRAM bei der Wii funktioniert, wissen wir nicht - damit erübrigt sich momentan jede Diskussion. In einigen Monaten werden wir (vielleicht) wissen, wie's bei der Wii funktioniert. Und sollte es anders funktionieren, wissen wir dann vielleicht sogar, wessen Implementierung effizienter ist.
Zur Effizienz einer Architektur kann man sich kaum streiten. Effizient ist, wer mit weniger Aufwand das erreicht, was andere mit mehr Aufwand machen. Aufwand in Geld und Stromverbrauch gemessen. Und eine General Purpose CPU für jeden Quark zu verwenden, ist somit nicht effizient. Insbesondere dann, wenn wir über Funktionen reden, die ohnehin 90% der Software benötigen. Deshalb haben wir überhaupt GPUs. Weil es Quatsch ist, für alles die CPU zu verwenden. Wenn zum Beispiel CELL doch so irre gut ist, Grafik zu berechnen, warum hat die PS3 dann überhaupt die RSX? Zwei CELLs wären doch viel flexibler gewesen...
Beispiel: Ein Pentium 233 mit einem Clearspeed CSX600 Board ist schneller bei double-precision Gleitkomma-Operationen als eine CELL und eine Xenon zusammen. Kostet zudem weniger und verbraucht viel weniger Strom. Das ist sehr effizient, wenn Du nur double-precision Gleitkomma-Performance benötigst. Wenn eine Spielkonsole also beispielsweise fast immer 5.1 Audio Mixing mit ein paar Effekten (Doppler, Reverb...) benötigt, warum sollte ich dann ein Sechstel einer $100 CPU mit 100W Leistungsaufnahme darauf verschwenden, wenn's ein $5 DSP mit 3W Leistungsaufnahme sowieso besser kann?
Physik ist nicht General Purpose. Das ist es ja gerade. Physik funktioniert immer sehr ähnlich, egal, ob Du nun Ageia, Newton, Havok oder ODE verwendest. Damit kann es problemlos in Hardware gegossen werden, und das ist immer effizienter. Natürlich hängt es von der Implementierung ab, keine Frage. Aber, nur mal um bei dem Beispiel des Sharcs zu bleiben, welches ich angeführt hatte: Auch für Audio-Processing gibt es verschiedene Möglichkeiten, und verschiedene kommerzielle, hochgezüchtete Engines für General Purpose CPUs, aber einem AD Sharc kann keine das Wasser reichen. Dazu ist ein Sharc auch sehr viel günstiger und Energie-effizienter, als eine CPU zu verwenden.
Zum Flaschenhals bei der Xbox sage ich jetzt erstmal nix. Das würde zu weit führen, und ich habe keine verständlichen Beispiele an der Hand. Was auf jeden Fall klar sein sollte, ist, dass Du, je mehr Du über den Bus pumpst, zunehmend Latenz- beziehungsweise Timingprobleme bekommst. Abgesehen davon, die Angaben zum Durchsatz sind Burst-Werte, die Du effektiv nie nutzen kannst. Die Bandbreite wird in vielen Fällen ausreichen, setzt aber sehr effiziente Programmierung vorraus - etwas, was man bei Spielen nur sehr selten findet.
Der eDRAM für den Cube wurde auch von NEC hergestellt, und kam ebenfalls von ATI/ ArtX.

Zur Effizienz einer Architektur kann man sich kaum streiten. Effizient ist, wer mit weniger Aufwand das erreicht, was andere mit mehr Aufwand machen. Aufwand in Geld und Stromverbrauch gemessen. Und eine General Purpose CPU für jeden Quark zu verwenden, ist somit nicht effizient. Insbesondere dann, wenn wir über Funktionen reden, die ohnehin 90% der Software benötigen. Deshalb haben wir überhaupt GPUs. Weil es Quatsch ist, für alles die CPU zu verwenden. Wenn zum Beispiel CELL doch so irre gut ist, Grafik zu berechnen, warum hat die PS3 dann überhaupt die RSX? Zwei CELLs wären doch viel flexibler gewesen...
Beispiel: Ein Pentium 233 mit einem Clearspeed CSX600 Board ist schneller bei double-precision Gleitkomma-Operationen als eine CELL und eine Xenon zusammen. Kostet zudem weniger und verbraucht viel weniger Strom. Das ist sehr effizient, wenn Du nur double-precision Gleitkomma-Performance benötigst. Wenn eine Spielkonsole also beispielsweise fast immer 5.1 Audio Mixing mit ein paar Effekten (Doppler, Reverb...) benötigt, warum sollte ich dann ein Sechstel einer $100 CPU mit 100W Leistungsaufnahme darauf verschwenden, wenn's ein $5 DSP mit 3W Leistungsaufnahme sowieso besser kann?