WIN $150 GIFT VOUCHERS: ALADDIN'S GOLD

Close Notification

Your cart does not contain any items

GPU Parallel Program Development Using CUDA

Tolga Soyata (University at Albany, SUNY, USA)

$141

Hardback

Not in-store but you can order this
How long will it take?

QTY:

English
Chapman & Hall/CRC
16 February 2018
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.
By:  
Imprint:   Chapman & Hall/CRC
Country of Publication:   United States
Dimensions:   Height: 254mm,  Width: 178mm, 
Weight:   1.000kg
ISBN:   9781498750752
ISBN 10:   1498750753
Series:   Chapman & Hall/CRC Computational Science
Pages:   476
Publication Date:  
Audience:   College/higher education ,  Professional and scholarly ,  Further / Higher Education ,  Undergraduate
Format:   Hardback
Publisher's Status:   Active
Introduction to Parallelism and GPU Programming. Introduction to Pthreads. Introduction to Multi-threading. Multi-threading Analysis. Introduction to AWS and the first GPU program. Analysis of the first CUDA program. How to run programs outside Amazon, on a different Unix system. How to run programs outside Amazon, on a different Windows system. Introduction to GPU Multi-threading and Global Memory. In-depth look at Global Memory and GPU Threads. Introduction to Shared Memory. In-depth look at Shared Memory. Performance Bottlenecks in GPU Architecture. Compute Capability and PTX. Host-Device Data Movement Mechanism. CUDA Streaming. CUDA Atomics. OpenGL-CUDA Interoperability. OpenGL and Real-Time GPU Processing. Example Applications - Edge Detection (CUBLAS). Example Applications - Sophisticated Image Processing (CUFFT). Example Applications- Elastography Based Tumor Detection (CUSOLVER). Example Applications - Real-Time Face Recognition (OpenCV, CUBLAS).

Tolga Soyata is an associate professor in the Electrical and Computer Engineering department of SUNY Albany.

See Also