𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

GPU Parallel Program Development Using CUDA

✍ Scribed by Tolga Soyata


Publisher
Chapman and Hall/CRC
Year
2018
Tongue
English
Leaves
477
Series
Chapman & Hall/CRC Computational Science
Edition
1
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


GPU Parallel Program Development using CUDA teaches GPU programming by showing the differences among different families of GPUs. This approach prepares the reader for the next generation and future generations of GPUs. The book emphasizes concepts that will remain relevant for a long time, rather than concepts that are platform-specific. At the same time, the book also provides platform-dependent explanations that are as valuable as generalized GPU concepts.

The book consists of three separate parts; it starts by explaining parallelism using CPU multi-threading in Part I. A few simple programs are used to demonstrate the concept of dividing a large task into multiple parallel sub-tasks and mapping them to CPU threads. Multiple ways of parallelizing the same task are analyzed and their pros/cons are studied in terms of both core and memory operation.

Part II of the book introduces GPU massive parallelism. The same programs are parallelized on multiple Nvidia GPU platforms and the same performance analysis is repeated. Because the core and memory structures of CPUs and GPUs are different, the results differ in interesting ways. The end goal is to make programmers aware of all the good ideas, as well as the bad ideas, so readers can apply the good ideas and avoid the bad ideas in their own programs.

Part III of the book provides pointer for readers who want to expand their horizons. It provides a brief introduction to popular CUDA libraries (such as cuBLAS, cuFFT, NPP, and Thrust),the OpenCL programming language, an overview of GPU programming using other programming languages and API libraries (such as Python, OpenCV, OpenGL, and Apple’s Swift and Metal,) and the deep learning library cuDNN.


πŸ“œ SIMILAR VOLUMES


GPU parallel program development using C
✍ Tolga Soyata πŸ“‚ Library πŸ“… 2018 πŸ› CRC Press 🌐 English

This book provides a hands-on, class-tested introduction to CUDA and GPU programming. It begins by introducing CPU programming and the concepts of P-threads, thread programming, multi-tasking, and parallelism, and then interweaves those concepts into an introduction of GPU programming. Using Nvidia'

GPU Parallel Program Development Using C
✍ Tolga Soyata πŸ“‚ Library πŸ“… 2018 🌐 English

This book provides a hands-on, class-tested introduction to CUDA and GPU programming. It begins by introducing CPU programming and the concepts of P-threads, thread programming, multi-tasking, and parallelism, and then interweaves those concepts into an introduction of GPU programming. Using Nvidia'

GPU Parallel Program Development Using C
✍ Tolga Soyata πŸ“‚ Library πŸ“… 2018 🌐 English

This book provides a hands-on, class-tested introduction to CUDA and GPU programming. It begins by introducing CPU programming and the concepts of P-threads, thread programming, multi-tasking, and parallelism, and then interweaves those concepts into an introduction of GPU programming. Using Nvidia'

CUDA programming: A developer's guide to
✍ Shane Cook πŸ“‚ Library πŸ“… 2012 πŸ› Morgan Kaufmann 🌐 English

If you need to learn CUDA but dont have experience with parallel computing, CUDA Programming: A Developers Introduction offers a detailed guide to CUDA with a grounding in parallel fundamentals. It starts by introducing CUDA and bringing you up to speed on GPU parallelism and hardware, then delving

CUDA programming: A developer's guide to
✍ Shane Cook πŸ“‚ Library πŸ“… 2012 πŸ› Morgan Kaufmann 🌐 English

If you need to learn CUDA but don't have experience with parallel computing, CUDA Programming: A Developer's Introduction offers a detailed guide to CUDA with a grounding in parallel fundamentals. It starts by introducing CUDA and bringing you up to speed on GPU parallelism and hardware, then delvin

CUDA Programming: A Developer's Guide to
✍ Shane Cook πŸ“‚ Library πŸ“… 2012 πŸ› Morgan Kaufmann 🌐 English

<p>If you need to learn CUDA but don't have experience with parallel computing, <i>CUDA Programming: A Developer's Introduction </i>offers a detailed guide to CUDA with a grounding in parallel fundamentals. It starts by introducing CUDA and bringing you up to speed on GPU parallelism and hardware, t