hm, keine Ahnung ob es noch was bringt sich hier zu melden, zumal viele Besucher alte Kommentare ja eh nicht lesen, aber trotzdem gebe ich mal meinen Senf dazu (sind nur ein paar Denkanstöße mit dem Bemühen um ein wenig Faktennähe):
vorn weg: ich hab noch nie eine KI (oder wohl besser KD) für ein Spiel programmiert und kann wirklich nicht einschätzen, was da so angestellt wird. Ich vermute aber, dass es über Graphenalgorithmen und einfache Agentensysteme nicht hinausgeht. Auch die Seite von aiseek habe ich mir nur oberflächlich angesehen. Ich will eher auf andere Kommentare hier im Forum eingehen.
Jetzt also meine Punkte:
1.) der erste Punkt nur für alle, die immer mit dem Argument der 3D-Beschleuniger ankommen:
selbst die billigste Transformation und Projektion eines einzelnen Eckpunktes erfordert bereits die Multiplikation einer homogenen Koordinate mit einer 4x4 Matrix (zumindest in der Theorie, wer mich wiederlegen kann solls sagen). Da kommen verdammt viele Berechnungen zusammen, die sich auf den FPUs einer CPU eher mühsam gestalten werden. Allerdings sind viele Operationen voneinander unabhängig und können so schön parallelisiert werden. Die Unabhängigkeit gilt ja scheinbar auch auf der nächsthöheren Ebene (die Menge der Vertexe) und deshalb ist zur Berechnung ein Chip ideal, der mit niedrigem Takt eine unmenge paralleler, spezialisierter Berechnung ausführt, ebene eine GPU. Ich würde zumindest anzweifeln, dass dieser Sachverhalt einfach so auf KIs übertragbar ist.
2.)Ich konnte den Hype um die Physikbeschleuniger noch verstehen. Der Knackpunkt ist ja, dass Physikberechnungen (mal eben im Gedächtnis kram), selbst oder gerade die in Spielen schon relativ weit verbreitete Mechanik, Differential- und Integralrechnungen benötigen. Vielleicht lässt sich da auch schummeln, aber das weiß ich nicht. Wurzelziehen kommt noch dazu. Alles Operationen also, die sich nicht so ohne weiteres auf eine Schaltung Abbilden lassen (im Gegensatz zu Addition und Multiplikation). Evtl. lässt sich hier auf einer speziellen Hardware wirklich eine bessere Lösung finden, die auf einer normale CPU nur Ballast wäre.
3.) Die direkte Mathematik hinter den Teilen der KI, die ich bisher gesehen habe (Wegfindung, Agentensysteme, Problemlösen durch Suchen, neuronale Netze, Planungssprachen) ist relativ trivial (nicht die Theorie, aber eben das, was am Ende wirklich berechnet werden muss). Da gehts im wesentlichen um schnelle Speicherzugriffe, Integer- und FP-Performance. Und solange hier keine massive Parallelisierung möglich ist, kann nichts, aber auch gar nichts, einer gewöhnlichen CPU das Wasser reichen. Der hier oft beschworene A* ist beispielsweise hochgradig sequentiell, da nützen einem alle Cores der Welt nichts. Und ob ich jetzt unbedingt sehen möchte, wie die Einheiten in einem Strategiespiel unabhängig voneinander ihre Wege planen...
4.) Wo wir gerade beim A* sind: der ist optimal (in dem Sinne, dass er einen vorhanden Weg immer findet) und angeblich unter den informierten Suchverfahren sogar optimal effizient. Wenn die Herren Entwickler der Karte einen Graphalgorithmus gefunden haben der signifikant besser ist, müssen sie vermutlich keine Erweiterungskarten mehr verkaufen sondern können sich zur Ruhe setzen. Nebenbei ist A* für kleine Probleme eh recht fix, ich habe erlebt, wie auf einem 6MHz MC68000 ein kleiner Industrieroboter den Weg für seinen Greifer durch ein 3D-Labirinth ausgerechnet hat. Da würde ich mir jetzt keine größeren Sorgen machen.
Also entweder haben die Israelis einen komplett neuen Ansatz der nicht auf dem üblich Graphenkram basiert, oder sie sollten sich dringend bei den Herren Russel und Norvig melden... (ich meine mich aber zu erinnern, dass die meister Probleme auf Graphen in ihrer Komplexität quadratisch oder schlimmer sind, so schnell kann die Hardware gar nicht schneller werden wie das Problem aufwendiger).
5.) weiter oben meinte jemand, FPGAs wären ganz toll für solche Aufgaben. Ich finde den Vorschlag an sich gar nicht dumm, weil man sich halt Hardware für die gerade anfallende Aufgabe hinbiegen könnte (das Beschreiben dauert aber einen Moment, also zu viele Wechsel des Inhalts sollten nicht stattfinden). Allerdings ist fraglich, ob der Aufwand den Erfolg rechtfertig. Nur mal so als Hausnummer: auf einem schon recht großen (aber noch bezahlbaren) Spartan 3E von Xilinx lässt sich eine 32Bit-Multiplikation auf interne 18Bit-Multiplizierer abbilden. Laut Datenblatt ist dann ein Takt von ca. 200Mhz möglich, allerding umfasst die Multiplikation auch 7 (oder waren es 5 ?) Pipelinestufen. Übermäßig schnell wird die Sache damit also auch nicht. Und ob sich auf einem solchen Baustein besonders viele ALUs parallel realisieren und schnell genug mit Daten versorgen lassen will ich lieber erst gar nicht beurteilen.
6) Puh, ich bin sicher, das ich noch mehr dazu schreiben wollte, aber mir fällts nicht mehr ein. In jedem Fall aber folgende Bitte an alle, die das hier lesen: wenn euch das nächste mal jemand sagt, dass Hardware XY irgend etwas schneller macht als CPU KL weil sie ja viel besser auf das Problem AB abgestimmt ist, dann denkt bitte daran, dass viele Probleme (im IT-Bereich) im Wesentlichen die schnelle Ausführung trivialer arithmetischer oder logischer Operationen erfordern. Und das können CPUs nun wirklich verdammt gut. Mich regt eh auf, dass Hardwareredaktionen Land auf Land ab immer diesen Mist nachbeten, und ich meine wirklich von der letzten Spielezeitschrift bis hoch zur Ct. Ich bin mir relativ sicher, dass da keiner einen Blick auf die zugrundeliegende Architektur geworfen hat (wie auch, keine Firma, von Sun mal abgesehen, gibt sowas frei). Deshalb ist es einfach schwer, eine sinnvolle, objektive Meinung zu solchen "x mal schneller"-Aussagen zu haben.
7) ha, der muss noch sein: wenn ich mir ein Board mit 2 Sockeln kaufe und eine zusätzliche CPU einbaue, wird das Spiel potentiell schneller laufen, insofern ist eine Geschwindigkeitssteigerung durch Zusatzhardware natürlich auch immer drin.
Fazit: ich kann wirklich nicht objektiv beurteilen, ob solche Karten nun was bringen oder nicht und wollte nur ein paar greifbarere Aussagen zur Diskussion stellen. Ich hoffe, dabei niemandem auf die Füße getreten zu sein.
Ausdruck und Rechtschreibung schiebe ich einfach mal auf meinen Zustand (*müde*), inhaltliche Fehler dürfen gern angekreidet werden :-)
mfg
Finkenelch