Extreme-Scale Computing: with C++ by Raymond J. Spiteri (.PDF)

File Size: 19.9 MB

Extreme-Scale Computing: A Practical Introduction with C++ by Raymond J. Spiteri, Kyle Klenk
Requirements: .PDF reader, 19.9 MB
Overview: Scientific computing is essential for tackling complex problems across many domains—but how can scientists develop high-performance and high-quality software that scales efficiently? This book serves as an accessible introduction to extreme-scale computing, specifically designed for domain scientists who may not have formal Computer Science training but need to harness the power of C++ and parallel computing for large-scale applications. The book begins by covering the fundamentals of scientific computing software management, including essential tools like Linux, Git, and CMake, before diving into a detailed exploration of C++ for extreme-scale computing. Readers familiar with languages like Python will gain the necessary skills to transition to C++ and build scalable, efficient software. Beyond basic programming, this book delves into hardware-aware computing, teaching readers how to optimize software performance by understanding the underlying architecture of modern computational systems. It then introduces parallel computing techniques, covering MPI for distributed memory parallelism, shared memory parallelism, CUDA for GPU programming, and Kokkos for performance portability.
Genre: Non-Fiction > Tech & Devices

Free Download links:

https://trbt.cc/bqkpq157yiqk.html

https://katfile.com/lm7vhqaqfikf/Extreme-Scale_Computing_with_C++.pdf.html