PerficienCC: Performance and Efficiency in HPC with Custom Computing

?berblick

Zahlreiche Projekte haben gezeigt, dass Beschleuniger wie Field-Programmable Gate-Arrays (FPGAs), Many-cores und Grafikprozessoren (GPUs) wesentliche Laufzeit- und Energie-Effizienz-Vorteile im Hochleistungsrechnen erzielen k?nnen. Dennoch werden Beschleuniger noch nicht durchg?ngig eingesetzt, selbst für Anwendungen, die mit hoher Wahrscheinlichkeit profitieren k?nnen. Es gibt zahlreiche Gründe für die Zurückhaltung der HPC Entwickler, z.B: Mangel an technischem Wissen, unklarer Nutzen der investierten Zeit für die Optimierung, fehlende Absch?tzung des Optimierungspotentials, mangelhafte Ausbildungsmaterialien, wenige Bibliotheken für eine Blackbox-Nutzung von Beschleunigern.Wir schlagen vor, einen strukturierten Unterstützungs- und Beratungsprozess in unserem Rechenzentrum zu etablieren, um HPC Entwickler w?hrend des kompletten Prozesses von der Performance-Analyse und Absch?tzung des Potentials bis zur Optimierung der laufzeitkritischen Programmteile mit Beschleunigern zu unterstützen. Dieser Prozess bringt in Teams von Entwicklern aus den rechnergestützten Wissenschaften komplement?re Expertise ein und verbessert so das Kosten/Nutzenverh?ltnis einer Code-Optimierung, welche den Anwendern eine Reduktion der Programmlaufzeit oder die M?glichkeit gr?ssere Systeme zu simulieren verspricht. Damit Entwickler von Resultaten früherer Arbeiten profitieren k?nnen, werden wir h?ufig genutzte Funktionen in wiederverwendbare Bibliotheken überführen. Schliesslich werden wir Schulungsunterlagen entwickeln, die auf die Bedürfnisse der rechnergestützten Wissenschaften zugeschnitten sind, und Code-Beispiele zur Illustration von Best-Practices sammeln.In diesem Projekt werden wir die spezifischen technologischen und forschungsbezogenen Kompetenzen unseres HPC Rechenzentrums und unserer Nutzer ausspielen. Einerseits profitieren wir von der thematischen Fokussierung unserer Hauptanwender auf eine kleine Zahl von Gebieten (Nanophotonik, Molekulardynamik, Quantenchemie). Dies erlaubt uns, dom?nenspezifische Methoden und Erfahrungen für unterschiedliche Codes wiederzuverwenden. Andererseits werden wir uns auf FPGAs als Beschleunigertechnologie konzentrieren, da FPGAs das h?chste Potential in Bezug auf Energieffizienz bieten und sich der Markt für FPGA Beschleunigung gerade sehr dynamisch entwickelt. Die Bestrebungen zur Standardisierung im Rahmen der ?bernahme von Altera durch Intel und die Einführung der CAPI Beschleuniger-Schnittstelle durch IBM, sowie die Verfügbarkeit von Hochsprachen-Entwicklungswerkzeugen für FPGAs, bilden eine neue technologische Basis für die breitere Nutzung von FPGAs in HPC. Wir erwarten, dass unsere substantielle Expertise im Custom Computing mit FPGAs, sowie die Konzentration auf wenige Anwendungsdom?nen ideale Voraussetzungen bieten, um einen wesentlichen Fortschritt im Bereich HPC mit FPGA-Beschleunigern zu erzielen und das Potenzial zur Verbesserung der Performanz und Energieeffizienz mit realen HPC Codes zu demonstrieren.

DFG-Verfahren Sachbeihilfen

Key Facts

Grant Number:
PL 595/2-1 / 320898746
Art des Projektes:
Forschung
Laufzeit:
01/2016 - 05/2020
Beitrag zur Nachhaltigkeit:
Industrie, Innovation und Infrastruktur, Nachhaltiger Konsum und nachhaltige Produktion
Gef?rdert durch:
DFG
Websites:
Homepage
Current research projects of the High-Performance IT Systems group
PerficienCC - Performance and Efficiency in HPC with Custom Computing

Detailinformationen

Projektleitung

contact-box image

Prof. Dr. Christian Plessl

Hochleistungsrechnen

Zur Person

Projektmitglieder

contact-box image

Dr. Tobias Kenter

Hochleistungsrechnen

Zur Person
contact-box image

Dr. Michael La?

Zur Person

Ergebnisse

Angesichts des weiterhin steigenden Rechenzeitbedarfs der rechnergestützten Wissenschaften sind nachhaltige Verbesserungen von bestehenden und weiterentwickelten Simulationscodes in Hinblick auf Leistungsf?higkeit und Energieeffizienz notwendig. Innovative Beschleunigerarchitekturen wie FPGAs k?nnen dazu ebenso wie neue Methoden einen wichtigen Beitrag leisten, waren aber für Anwender bisher schwer zug?nglich. Durch enge Zusammenarbeit zwischen Codeentwicklern aus den rechnergestützten Wissenschaften und HPC-Experten mit Fokus auf Beschleunigerarchitekturen konnte das Projekt diese Lücke in mehreren Bereichen schlie?en. Auf Anwendungsseite wurden dabei zwei wichtige Simulationsmethoden verbessert, die auch gro?e Anteile am Rechenzeitaufkommen der HPC-Systeme am Paderborn Center for Parallel Computing (PC2) haben: Zum einen der Bereich Ab-initio Molekulardynamik (AIMD) mit dem Open Source Code CP2K und zum anderen die L?sung der Maxwell Gleichungen im Zeitbereich für Anwendungen aus dem Gebiet der Nanophotonik. Für die Simulationen basierend auf Maxwells Gleichungen wurde ein besonderer Fokus auf die energieeffiziente Ausführung mit FPGAs gelegt. Für die Stencil-basierte Finite-difference Time-domain (FDTD) Methode wurde dabei gezeigt, dass FPGAs verschiedener Hersteller, Intel und Xilinx, mit einer gemeinsamen Codebasis genutzt werden k?nnen. Für ein Discontinuous Galerkin (DG) Verfahren auf unstrukturierten Gittern wurde anschlie?end die wohl erste FPGA-Implementierung überhaupt demonstriert und zeigte Performance- und Effizienzgewinne gegenüber der CPU Referenz. Die guten Ergebnisse für eine Methode, bei der es mit konventionellen Architekturen schwierig ist Performancepotenziale auszusch?pfen, bilden die Grundlage für weitere Forschung an Abstraktionen und der ?bertragung auf weitere Anwendungsbereiche bei denen partielle Differentialgleichungen mit der Finite-Elemente Methode gel?st werden. Für AIMD mit Elektronenstrukturberechnungen in CP2K wurden gro?e Fortschritte an Performance und Effizienz über mehreren Abstraktionsebenen erzielt, die im Zusammenspiel ganz neue Gr??enordnungen von simulierten Problemen erm?glichen. Der methodische Kern der Arbeiten ist eine neue, als Submatrix-Methode benannte Approximationsmethode für Matrixoperationen auf dünnbesetzten Matrizen, die den gr??ten Rechenzeitanteil für AIMD Simulation mit CP2K ben?tigen. Die durch die Approximation eingeführten numerischen Fehler, lassen sich auf innovative Weise kompensieren. Weitere Effizienzgewinne konnten durch die Auslagerung von lokalen Matrixoperationen auf FPGAs erzielt werden. Diese Innovationen lieferten wesentliche Grundlagen für eine jüngst ver?ffentliche Rekordsimulation von bis zu 100 Millionen Atomen mit elektronenstrukturbasierter AIMD, bei der mit dem gleichen Ansatz Berechnungen mit reduzierter Genauigkeit auf GPU Tensor Cores ausgelagert wurden. Der in PerficienCC entwickelte Code wurde bereits zum gro?en Teil wieder in den ?ffentlichen CP2K Code integriert. Weitere Software-Ver?ffentlichungen unterstützen die Nachhaltigkeit der erzielten Ergebnisse. Als FPGA-Bibliotheken wurden insbesondere Komponenten wie Matrix Multiplikationen und 3D FFTs extrahiert, die zun?chst zur Beschleunigung von CP2K entwickelt wurden, aber breitere Anwendbarkeit haben. Dazu kommen Tutorien zur Anwendungsbeschleunigung auf FPGAs mit Herstellerwerkzeugen zur Hochsprachen-Synthese, die am Standort Paderborn sowie auf internationalen Konferenzen durchgeführt wurden. Die Projektergebnisse tragen wesentlich zur strategischen Entwicklung des PC2 zu einem Kompetenzzentrum für FPGA-Beschleunigung von wissenschaftlichen Simulation und als Rechenzentrum im NHR Verbund bei, die sowohl in der internationale Fachpresse als auch in regionalen Medien Anklang findet.


Projektbezogene Publikationen (Auswahl)


?Flexible FPGA design for FDTD using OpenCL“. In: Proc. Int. Conf. on Field Programmable Logic and Applications (FPL). IEEE, 2017, S. 1–7. ISBN: 978-9-0903-0428-1

T. Kenter, J. F?rstner und C. Plessl

(365足彩投注_365体育投注@he online unter https://doi.org/10.23919/FPL.2017.8056844)


?A Massively Parallel Algorithm for the Approximate Calculation of Inverse P-Th Roots of Large Sparse Matrices“. In: Proc. Platform for Advanced Scientific Computing Conf. (PASC). PASC ’18. Basel, Switzerland: Association for Computing Machinery, 2018. ISBN: 9781450358910

M. Lass, S. Mohr, H. Wiebeler, T. D. Kühne und C. Plessl

(365足彩投注_365体育投注@he online unter https://doi.org/10.1145/3218176.3218231)


?OpenCL-based FPGA Design to Accelerate the Nodal Discontinuous Galerkin Method for Unstructured Meshes“. In: Proc. IEEE Symp. on Field-Programmable Custom Computing Machines (FCCM). IEEE, 2018

T. Kenter, G. Mahale, S. Alhaddad, Y. Grynko, C. Schmitt, A. Afzal, F. Hannig, J. F?rstner u. a.

(365足彩投注_365体育投注@he online unter https://doi.org/10.1109/FCCM.2018.00037)


?OpenCL Implementation of Cannon’s Matrix Multiplication Algorithm on Intel Stratix 10 FPGAs“. In: 2019 International Conference on Field- Programmable Technology (ICFPT). Dez. 2019, S. 99–107

P. Gorlani, T. Kenter und C. Plessl

(365足彩投注_365体育投注@he online unter https://doi.org/10.1109/ICFPT47387.2019.00020)


?A Submatrix-Based Method for Approximate Matrix Function Evaluation in the Quantum Chemistry Code CP2K“. In: Proc. Int. Conf. on High Performance Computing, Networking, Storage and Analysis (SC). SC ’20. Atlanta, Georgia: IEEE Press, 2020. ISBN: 9781728199986

M. Lass, R. Schade, T. D. Kühne und C. Plessl

(365足彩投注_365体育投注@he online unter https://doi.org/10.1109/SC41405.2020.00084)


?CP2K: An electronic structure and molecular dynamics software package - Quickstep: Efficient and accurate electronic structure calculations“. In: The Journal of Chemical Physics 152.19194103 (2020)

T. Kühne, M. Iannuzzi, M. D. Ben, V. V. Rybkin, P. Seewald, F. Stein, T. Laino, R. Z. Khaliullin u. a.

(365足彩投注_365体育投注@he online unter https://doi.org/10.1063/5.0007045)


Publikationen

CP2K: An electronic structure and molecular dynamics software package - Quickstep: Efficient and accurate electronic structure calculations
T. Kühne, M. Iannuzzi, M.D. Ben, V.V. Rybkin, P. Seewald, F. Stein, T. Laino, R.Z. Khaliullin, O. Schütt, F. Schiffmann, D. Golze, J. Wilhelm, S. Chulkov, M.H.B.-H. Mohammad Hossein Bani-Hashemian, V. Weber, U. Borstnik, M. Taillefumier, A.S. Jakobovits, A. Lazzaro, H. Pabst, T. Müller, R. Schade, M. Guidon, S. Andermatt, N. Holmberg, G.K. Schenter, A. Hehn, A. Bussy, F. Belleflamme, G. Tabacchi, A. Gl??, M. Lass, I. Bethune, C.J. Mundy, C. Plessl, M. Watkins, J. VandeVondele, M. Krack, J. Hutter, The Journal of Chemical Physics 152 (2020).
A Submatrix-Based Method for Approximate Matrix Function Evaluation in the Quantum Chemistry Code CP2K
M. Lass, R. Schade, T. Kühne, C. Plessl, in: Proc. International Conference for High Performance Computing, Networking, Storage and Analysis (SC), IEEE Computer Society, Los Alamitos, CA, USA, 2020, pp. 1127–1140.
Accurate Sampling with Noisy Forces from Approximate Computing
V. Rengaraj, M. Lass, C. Plessl, T. Kühne, Computation 8 (2020).
OpenCL Implementation of Cannon's Matrix Multiplication Algorithm on Intel Stratix 10 FPGAs
P. Gorlani, T. Kenter, C. Plessl, in: Proceedings of the International Conference on Field-Programmable Technology (FPT), IEEE, 2019.
A General Algorithm to Calculate the Inverse Principal p-th Root of Symmetric Positive Definite Matrices
D. Richters, M. Lass, A. Walther, C. Plessl, T. Kühne, Communications in Computational Physics 25 (2019) 564–585.
Alle Publikationen anzeigen