ShopSpell

Parallel C++: Efficient and Scalable High-Performance Parallel Programming Using HPX [Paperback]

$56.99     $69.99   19% Off      (Free Shipping)
100 available
  • Category: Books (Computers)
  • Author:  Diehl, Patrick, Brandt, Steven R., Kaiser, Hartmut
  • Author:  Diehl, Patrick, Brandt, Steven R., Kaiser, Hartmut
  • ISBN-10:  3031543688
  • ISBN-10:  3031543688
  • ISBN-13:  9783031543685
  • ISBN-13:  9783031543685
  • Publisher:  Springer
  • Publisher:  Springer
  • Binding:  Paperback
  • Binding:  Paperback
  • SKU:  3031543688-11-SPRI
  • SKU:  3031543688-11-SPRI
  • Pages:  239
  • Pages:  239
  • Item ID: 106800435
  • List Price: $69.99
  • Seller: ShopSpell
  • Ships in: 5 business days
  • Transit time: Up to 5 business days
  • Delivery by: Oct 16 to Oct 18
  • Notes: Brand New Item. Not shipped to AK, HI, APO, FPO, AE.

This textbook focuses on practical parallel C++ programming at the graduate student level. In particular, it shows the APIs and related language features in the C++ 17 and C++ 20 standards, covering both single node and distributed systems. It shows that with the parallel features in the C++ 17 and C++ 20 standards, learning meta-languages like OpenMP is no longer necessary. Using the C++ standard library for parallelism and concurrency (HPX), the same language features can be extended to distributed codes, providing a higher-level C++ interface to distributed programming than the Message Passing Interface (MPI).

The book starts with the single-threaded implementation of the fractal sets, e.g. Julia set, and Mandelbrot set, using the C++ Standard Library (SL)s container and algorithms. This code base is used for parallel implementation using low-level threads, asynchronous programming, parallel algorithms, and coroutines. The asynchronous programming examples are then extended to distributed programming using the C++ standard library for parallelism and concurrency (HPX). Octo-Tiger, an astrophysics code for stellar merger, is used as a showcase for a portable, efficient, and scalable high-performance application using HPX.

The books core audience is advanced undergraduate and graduate students who want to learn the basics of parallel and distributed C++ programming but are not computer science majors. Basic C++ knowledge, like functions, classes, loops, and conditional statements, is assumed as a requirement, while C++ advanced topics, like generic programming, lambda functions, smart pointers, and move semantics, are briefly summarized in the appendix.


Part I: Preliminaries.- 1. Compiling and running the code and examples in this book.- Part II: Introduction to C++ and C++ Standard Library.- 2. About C++, C++ standard, and the C++ Standard Library.- 3. C++ Standard library.- 4. Example Mandelbrot sel—
Add Review