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.
"synopsis" may belong to another edition of this title.
Tolga Soyata is an associate professor in the Electrical and Computer Engineering department of SUNY Albany.
"About this title" may belong to another edition of this title.
US$ 7.58 shipping from United Kingdom to U.S.A.
Destination, rates & speedsSeller: WorldofBooks, Goring-By-Sea, WS, United Kingdom
Paperback. Condition: Very Good. The book has been read, but is in excellent condition. Pages are intact and not marred by notes or highlighting. The spine remains undamaged. Seller Inventory # GOR014203165
Quantity: 3 available
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: good. May show signs of wear, highlighting, writing, and previous use. This item may be a former library book with typical markings. No guarantee on products that contain supplements Your satisfaction is 100% guaranteed. Twenty-five year bookseller with shipments to over fifty million happy customers. Seller Inventory # 26318226-5
Quantity: 5 available
Seller: SecondSale, Montgomery, IL, U.S.A.
Condition: Good. Item in very good condition! Textbooks may not include supplemental items i.e. CDs, access codes etc. Seller Inventory # 00074376137
Quantity: 1 available
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: As New. Unread book in perfect condition. Seller Inventory # 26318226
Quantity: 10 available
Seller: GreatBookPrices, Columbia, MD, U.S.A.
Condition: New. Seller Inventory # 26318226-n
Quantity: 10 available
Seller: Grand Eagle Retail, Fairfield, OH, U.S.A.
Hardcover. Condition: new. Hardcover. 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 Apples Swift and Metal,) and the deep learning library cuDNN. This book teaches GPU programming by introducing CPU multi-threaded programming and bases GPU massively-parallel programming on this foundation. The differences among families of GPUs are also studied. The book also explores CUDA libraries, OpenCL, GPU programming with other languages and API libraries, and the deep learning library cuDNN. Shipping may be from multiple locations in the US or from the UK, depending on stock availability. Seller Inventory # 9781498750752
Quantity: 1 available
Seller: Chiron Media, Wallingford, United Kingdom
Hardcover. Condition: New. Seller Inventory # 6666-TNF-9781498750752
Quantity: 10 available
Seller: GreatBookPricesUK, Woodford Green, United Kingdom
Condition: New. Seller Inventory # 26318226-n
Quantity: 10 available
Seller: Majestic Books, Hounslow, United Kingdom
Condition: New. Seller Inventory # 370363872
Quantity: 3 available
Seller: GreatBookPricesUK, Woodford Green, United Kingdom
Condition: As New. Unread book in perfect condition. Seller Inventory # 26318226
Quantity: 10 available