Training course "High-performance scientific computing in C++"

Start
27th June 2016 07:00 AM
End
28th June 2016 02:30 PM
Location
Jülich Supercomputing Centre, Ausbildungsraum 2, building 16.3, room 211

(Course no. 95/2016 in the training programme of Forschungszentrum Jülich)

Target audience:

C programmers who want to use C++ on high-performance systems

Contents:

 

Prerequisites:

Good working knowledge of C++, especially the C++14 standard.


Language:

This course is given in English.

Duration:

2 days

Date:

27-28 June 2016, 09:00-16:30

Venue:

Jülich Supercomputing Centre, Ausbildungsraum 2, building 16.3, room 211

Number of participants:

minimum 5

Instructor:

Dr. Sandipan Mohanty, JSC

Contact:

Dr. Sandipan Mohanty


Phone: +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
Last Modified: 21.05.2022