Trainingskurs "High-performance scientific computing in C++"
(Kurs-Nr. 95/2016 im Trainingsprogramm des Forschungszentrums)
Zielgruppe: | Mitarbeiter, die C++ auf Supercomputern nutzen wollen |
Inhalt: | |
Teilnahmevoraussetzungen: | Gute Kenntnisse in C++, speziell des C++14-Standards |
Sprache: | Der Kurs wird auf Englisch gehalten. |
Dauer: | 2 Tage |
Zeit: | 27.-28. Juni 2016, 9.00-16.30 Uhr |
Ort: | Jülich Supercomputing Centre, Ausbildungsraum 2, Geb. 16.3, R, 211 |
Teilnehmerzahl:: | mindestens 5 |
Referent: | Dr. Sandipan Mohanty, JSC |
Ansprechpartner: | Dr. Sandipan Mohanty Telefon: +49 2461 61-2526 E-mail: s.mohanty@fz-juelich.de |
Modern C++ with its support for procedural, object-oriented, generic and functional programming styles, offers many powerful abstraction mechanisms to express complexity at a high level while remaining very efficient. It is therefore the language of choice for many scientific projects. However, achieving high performance on contemporary computer hardware, with many levels of parallelism, requires understanding C++ code from a more performance centric viewpoint.
In this course the participants will learn how to write programs in C++ that better utilize the modern processors. The participants will learn how to identify and avoid performance degrading characteristics, such as unnecessary memory operations, branch mis-predictions, and unintentionally strong ordering assumptions. Two powerful open source libraries to help write structured multi-threaded applications will also be introduced:
- Intel (R) Threading Building Blocks
- NVIDIA Thrust