Principles of Parallel Scientific Computing A First Guide to Numerical Concepts and Programming Methods /

Weinzierl, Tobias.

Principles of Parallel Scientific Computing A First Guide to Numerical Concepts and Programming Methods / [electronic resource] : by Tobias Weinzierl. - 1st ed. 2021. - XIII, 314 p. 84 illus., 37 illus. in color. online resource. - Undergraduate Topics in Computer Science, 2197-1781 . - Undergraduate Topics in Computer Science, .

1. The Pillars of Science -- 2. Moore Myths -- 3. Our Model Problem -- 4. Floating Point Numbers -- 5. A Simplistic Machine Model -- 6. Round-off Error Propagation -- 7. SIMD Vector Crunching -- 8. Arithmetic Stability of an Implementation -- 9. Vectorisation of the Model Problem -- 10. Conditioning and Well-posedness -- 11. Taylor Expansion -- 12. Ordinary Differential Equations -- 13. Accuracy and Appropriateness of Numerical Schemes -- 14. Writing Parallel Codes -- 15. Upscaling Methods -- 16. OpenMP Primer -- 17. Shared Memory Tasking -- 18. GPGPUs with OpenMP -- 19. Higher Order Methods -- 20. Adaptive Time Stepping.

It is the combination of mathematical ideas and efficient programs that drives the progress in many scientific disciplines: The faster results can be generated on a computer, the bigger and the more accurate are the challenges that can be solved. This textbook targets students who have programming skills and do not shy away from mathematics, though they might be educated in computer science or an application domain and have no primary interest in the maths. The book is for students who want to see some simulations up and running. It introduces the basic concepts and ideas behind applied mathematics and parallel programming that are needed to write numerical simulations for today’s multicore workstations. The intention is not to dive into one particular application domain or to introduce a new programming language; rather it is to lay the generic foundations for future studies and projects in this field. Topics and features: Fits into many degrees where students have already been exposed to programming languages Pairs an introduction to mathematical concepts with an introduction to parallel programming Emphasises the paradigms and ideas behind code parallelisation, so students can later on transfer their knowledge and skills Illustrates fundamental numerical concepts, preparing students for more formal textbooks The easily digestible text prioritises clarity and intuition over formalism, illustrating basic ideas that are of relevance in various subdomains of scientific computing. Its primary goal is to make theoretical and paradigmatic ideas accessible and even fascinating to undergraduate students. Tobias Weinzierl is professor in the Department of Computer Science at Durham University, Durham, UK. He has worked at the Munich Centre for Advanced Computing (see the Springer edited book, Advanced Computing) before, and holds a PhD and habilitation from the Technical University Munich.

9783030761943

10.1007/978-3-030-76194-3 doi


Computer science--Mathematics.
Computers.
Computer programming.
Electronic digital computers--Evaluation.
Mathematics--Data processing.
Mathematics of Computing.
Hardware Performance and Reliability.
Programming Techniques.
System Performance and Evaluation.
Computational Science and Engineering.

QA76.9.M35

004.0151
© 2024 IIIT-Delhi, library@iiitd.ac.in