Explore the extension of C++ with Co-Array semantics in this CppNow conference talk. Dive into the world of Single Programming Multiple Data (SPMD) schemes and their application in large scientific computing problems. Learn how Co-Array semantics can reduce code complexity and improve performance by allowing processors to work on local data sets. Discover the implementation of Fortran-like co-indexing features in HPX, a general-purpose C++ runtime system. Examine the combination of HPX concepts and new C++ language features that enable the creation of a high-performance API similar to coarray FORTRAN. Follow along as the speaker covers topics such as core arrays, the Pegasus model, HPX Objects, CoArrays, range operations, SPMD regions, operator functions, matrix transpose, and sparse matrix operations. Gain insights into how these concepts can be applied to solve complex scientific computing problems more efficiently.
Overview
Syllabus
Introduction
Context
Core arrays
Pegasus model
Approach
HPX
HPX Object
CoArrays
C Code Example
Range Operations
SPMD region
Operator function
Matrix transpose
Benchmark
Sparse Matrix
Taught by
CppNow