Skip to main content

Portabilität von Anwendungen über Geräte hinweg geht weiter

Die HSA Foundation hat eine neue Spezifikation veröffentlicht, mit der Programme schneller auf Geräten mit unterschiedlichen Konfigurationen ausgeführt werden können. Dies soll den Export von Spielen und Anwendungen von Spielkonsolen auf PCs und Smartphones erleichtern.

Die neue Warteschlangenspezifikation mit dem Namen HQ ermöglicht es den Prozessoren, mehr Ressourcen zu teilen. Die Spezifikation, die die Heterogeneous System Architecture Foundation am Dienstag bekannt gab, reduziert zudem die Latenz und verkürzt den Kommunikationspfad zwischen den Chips.

Die HSA Foundation entwickelt eine Reihe von Open-Source-Programmierwerkzeugen, mit denen Programmierer portierbare Architekturen erstellen können Geräte. Die Tools, die sich noch in der Entwicklung befinden, werden die verfügbaren Computerressourcen für eine bessere Systemleistung bei geringerem Stromverbrauch kohärent nutzen.

Die HQ-Spezifikation dreht sich um die Einreihung und den Versand von Tasks zwischen CPUs und GPUs mit einer größeren Last der Taskausführung von der Software zur Hardware. Unter HSA können Datenpakete direkt zwischen Hardwareressourcen verschoben werden, und die HQ-Spezifikation ermöglicht es GPUs und CPUs, Aufgaben zu erstellen und sie in Ausführungswarteschlangen zu platzieren, die für beide Prozessoren vorgesehen sind. Das Mesh-System von Messaging, Queuing und Dispatching erleichtert es den Prozessoren, Tasks zu beurteilen und zu erfassen, was eine schnellere Verarbeitung von Anwendungen zur Folge hat.

Die Spezifikation erleichtert es Programmierern, in Hochsprachen zu arbeiten oder Bibliotheken an GPUs zu binden zu CPUs und anderen Ressourcen, um Arbeit zu erledigen, sagte Nathan Brookwood, Principal Analyst bei Insight 64.

"GPUs hatten nicht die gleiche Art von Beziehung. Sie wurden als Geräte betrachtet, und Sie mussten zu ihnen über Geräte-Treiber-Schnittstellen gehen ", sagte Brookwood.

Entwickler werden in der Lage, Code für GPUs so einfach wie für CPUs zu schreiben, Brookwood sagte, fügt die Spezifikation passt in HSA-Thema Die Prozessoren sind gleichberechtigte Partner in Computerumgebungen.

"Es ist elegant, es ist einfacher für den Softwareentwickler, während es vorhanden ist, diese heterogenen Anwendungen zu erstellen, die CPUs und GPUs nutzen", sagte Brookwood.

Einige der Die schnellsten Computer der Welt werden heute von CPUs und GPUs angetrieben. Mehr Rechenleistung wird für Multimedia, Spracherkennung, Gesichtserkennung und ortsbasiertes Computing benötigt, und ein schnellerer Zugriff auf GPUs wird diesen Anwendungen zugute kommen, sagte Ben Sander, Senior Fellow bei Advanced Micro Devices, während einer Telefonkonferenz.

AMD , ARM, Qualcomm und Mediatek gehören zu den frühen Unterstützern der HSA Foundation. Die Programmierwerkzeuge von HSA basieren zunächst auf Open-Source-Frameworks für die parallele Programmierung wie OpenCL, aber AMD-Mitarbeiter haben erklärt, dass HSA letztlich seine parallele Programmiersprache haben könnte.

HSA veröffentlicht neue Spezifikationen, da es die Programmiertools aufbaut. Im April gab HSA eine Spezifikation namens HUMA bekannt, die verschiedene Speichertypen in einem System vereint und für alle Prozessoren zugänglich macht. Als Ergebnis haben Entwickler Zugriff auf einen größeren Pool von gemeinsam genutztem Speicher, in dem Code ausgeführt werden könnte.

Intel und Nvidia sind noch keine Mitglieder der HSA Foundation und bieten ihre eigenen parallelen Programmiertools an, um ihre Chips zu ergänzen. Intel bietet Entwicklertools und Compiler für seine Xeon Phi-Chips an, während Nvidia CUDA für seine Grafikprozessoren anbietet.

Für die HQ-Spezifikation wird die HSA Foundation ein standardisiertes Task-Dispatch-Protokoll für kompatible Chips von verschiedenen Unternehmen bereitstellen, sagte Manju Hegde Vice President für heterogene Lösungen bei AMD.

Chips haben ihr eigenes proprietäres Versandformat und müssen die Haken haben, um HSA-Spezifikationen zu unterstützen. AMD plant, im nächsten Jahr einen HSA-kompatiblen Chip namens Kaveri für PCs zu veröffentlichen.

Die Spezifikationen von HSA werden in Java Virtual Machines mit Java 9 im Jahr 2015 unterstützt. Die JVM wird HSA-Spezifikationen erkennen und kompatible Beschleuniger zur Beschleunigung nutzen Programmausführung ohne zusätzliche Code-Ebenen.

Die HQ-Spezifikation bezieht sich wahrscheinlich nicht auf AMDs Mantle Low-Level-Grafik-API (Anwendungsprogrammierschnittstelle), die letzten Monat für die GPUs des Unternehmens eingeführt wurde, sagte Brookwood.

Mantle wurde mit den DirectX-APIs von Microsoft für Xbox und Windows verglichen Spiele.

"Mantel hat nichts mit [HQ] zu tun", sagte Brookwood. "AMD hat nicht darüber gesprochen, Mantle zu einem Multi-Vendor zu machen."