Maximale Geschwindigkeit durch direkte Anbindung an den Hauptprozessor FPGA-Coprozessoren in AMD64-Systemen

AMD öffnet den Zugang zu seinem „Filetstück“ – dem Prozessorsockel. Aber nicht für die Wettbewerber, sondern für Partner, die ihre Systeme differenzieren können, indem sie Coprozessoren entwickeln, die Spezialaufgaben übernehmen – etwa die Umcodierung von Mediendatenströmen oder die Verschlüsselung.

Maximale Geschwindigkeit durch direkte Anbindung an den Hauptprozessor

AMD öffnet den Zugang zu seinem „Filetstück“ – dem Prozessorsockel. Aber nicht für die Wettbewerber, sondern für Partner, die ihre Systeme differenzieren können, indem sie Coprozessoren entwickeln, die Spezialaufgaben übernehmen – etwa die Umcodierung von Mediendatenströmen oder die Verschlüsselung.

Hardware-Beschleunigung für die Berechnung komplexer Algorithmen gewinnt mit der zunehmenden Verbreitung digitaler Medien immer mehr an Bedeutung. Insbesondere die Komprimierung von Media-Datenstömen und Anwendung von Datenverschlüsselungsverfahren erhöhen den Bedarf an Rechenleistung für Computersysteme derart, dass der Einsatz von Coprozessoren unter technischen wie auch wirtschaftlichen Gesichtspunkten sinnvoll ist. Die Leistungsfähigkeit heutiger FPGAs macht sie zu ideal geeigneten, flexiblen Hardware-Beschleunigern für kundenspezifische Anwendungen.

Effektives FPGA-Co-Processing stellt an die Architektur von Rechnersystemen spezielle Anforderungen. AMD bietet mit seiner AMD64-Architektur eine Plattform an, die durch ihr flexibles HyperTransport-Businterface für den Coprozessor-Einsatz hervorragend geeignet ist. In der Initiative „Torrenza“ arbeitet AMD gemeinsam mit Industriepartnern daran, Coprozessor-Anwendungen in nahezu allen Bereichen voranzutreiben.

Coprozessoren übernehmen Spezialaufgaben

Coprozessoren können zur Beschleunigung von komplexen Rechenalgorithmen eingesetzt werden. Anwendungen wie Verschlüsselung von Daten oder zur Komprimierung von Media-Datenströmen belasten die System-CPU erheblich, was zu Systemverlusten des Rechners führt. Abhilfe kann hier eine Multiprozessor-Plattform schaffen. Damit einher geht allerdings meist ein erheblicher Aufwand für Infrastruktur (Hardware, Stromverbrauch etc.). Elegante Lösungsvarianten stellen spezialisierte Coprozessoren für die Berechnung der gewünschten Algorithmen in Hardware dar. Dies entlastet nicht nur die CPU, sondern beschleunigt die Berechnung von Algorithmen erheblich. So kann zum Beispiel Video-Codierung nach dem H.264-Standard mit Hilfe von Coprozessoren bis zu 300-mal schneller durchgeführt werden als nur mit Software. Die Tabelle stellt den Geschwindigkeitsvorteil von Hardware gegenüber Software für verschiedene Algorithmen dar.

Nutzt man für das Co-Processing leistungsfähige FPGAs, hat man den Vorteil, seine Algorithmen an veränderte Bedingungen flexibel anpassen zu können oder die Entwicklung neuer Algorithmen durch systemnahes Rapid Prototyping zu unterstützen. Weiterhin senken FPGAs anstelle einer zusätzlichen CPU die Stromaufnahme der Plattform erheblich.

Von wesentlicher Bedeutung für den kosten- sowie rechenleistungseffizienten Einsatz des Coprozessors ist dabei die Architektur des Rechnersystems, speziell die Anbindung des Coprozessors an die CPU. Anforderungen dafür sind eine schnelle Busanbindung mit hoher Bandbreite und geringer Latenz, direkter Zugriff der Software auf den Coprozessor, direkter Speicherzugriff sowie geringer zusätzlicher Hardware-Aufwand. AMD bietet mit der AMD64-Architektur eine Plattform an, die den Anforderungen für Co-Processing in hervorragender Weise entspricht.