Modern C++ for High-Performance Computing

Series: HPC Best Practices Webinars

Since its creation by Bjarne Stroustrup in the early 1980s, C++ has steadily evolved to become a multi-paradigm programming language that fully supports the needs of modern programmers. Because C++ had its roots in the C programming language, conventional wisdom (and longstanding practice) had been to use C++ in a dichotomous fashion: abstractions for productivity with escape to C for performance. However, C++ today is best viewed holistically — as it is today — rather than as extension of C or even of earlier versions of C++. In this webinar I will give a tour of features from modern C++ relevant to HPC, along with guidelines for their use — and demonstrate that C++ can offer productivity and elegance while sacrificing nothing in performance.

Presenter

Presenter Bio

Andrew Lumsdaine is currently Chief Scientist at the Northwest Institute for Advanced Computing, a Seattle-based joint research institute between Pacific Northwest National Laboratory and the University of Washington. His current research interests focus on scalable graph analytics and the convergence of Big Data, HPC, and machine learning. He and members of his research group made several notable contributions to C++11, including variadic templates, decltype, lambdas, and enable_if. Andrew is one of the recipients of the 2019 BSSw Fellowships. The BSSw Fellowships Program gives recognition and funding to leaders and advocates of high-quality scientific software.