Hardwarebeschleuniger für Multitasking

LG Electronics veröffentlicht auf der Hot Chips 28 einen Hardware-Beschleuniger für die Verwaltung von Threads.

In Pocket speichern vorlesen Druckansicht 13 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Andreas Stiller

LG Electronics zeigte auf der Hot-Chips-Konferenz das Konzept eines Hardware-Beschleunigers, der sich nicht um spezielle Rechenaufgaben kümmert, sondern als "Task Graph Accelerator" (TGA) für ein Tasking mit möglichst geringem Overhead sorgt. Er klinkt sich über das TaskSuperscalar-Programmiermodell von OpenMP 4.0 oder das am Barcelona Supercomputing Center entwickelte OmpSs ein. Hierfür hat LG eine Toolchain mit Bibliotheken für parallelisierende Compiler (GCC, Clang, LLVM) entwickelt.

Mit Hilfe eines Task Dependency Checks werden die Programme auf ein Bündel kleiner unabhängiger Tasks heruntergebrochen. Der TGA löst dann alle Abhängigkeiten auf und verteilt die Tasks auf die verfügbaren Prozessorkerne oder Prozessorgruppen, GPUs oder andere Beschleuniger. 512 aktive Tasks und 4096 Abhängigkeiten – die Kanten im Graph -- kann das vorgesehene TGA-Design namens Tioga verwalten, das dafür Cache-kohärenten Zugriff auf den Speicher benötigt. Es soll, hergestellt im 14-nm-Prozess, nur 0,1 Quadratmillimeter Die-Fläche beanspruchen.

Als Proof of Concept hat LG Tioga in ein Xilinx-Zynq-FPGA gepackt, das zwei ARM-A9-Kerne mit 660 MHz bereitstellt. Tioga lässt sich hier mit etwa 50 MHz emulieren. Als Benchmark-Suite hat LG den Kastors-Benchmark unter Clang laufen lassen, der OpenMP-4.0-Features abcheckt. Als Gegenstück kam Intels OpenMP Runtime (IOMP) zum Einsatz, die für ARM übersetzt wurde. Auf den beiden A9-Prozessoren war der Jacobi-Benchmark der Kastors-Suite mit Hardware-Beschleunigung gut doppelt so schnell, beim Sparse-LU-Benchmark fast dreimal so schnell wie mit IOMP.

Die Ergebnisse zweier Benchmarks aus der Kastors-Suite. Mit Hardwarebeschleunigung bei der Task-Verwaltung bis zu dreimal so schnell.

(Bild: LGe)

(as)