GPU Parallel Program Development Using CUDA
暫譯: 使用CUDA的GPU平行程式開發

Soyata, Tolga

  • 出版商: CRC
  • 出版日期: 2020-06-30
  • 售價: $2,400
  • 貴賓價: 9.5$2,280
  • 語言: 英文
  • 頁數: 440
  • 裝訂: Quality Paper - also called trade paper
  • ISBN: 0367572249
  • ISBN-13: 9780367572242
  • 相關分類: CUDAGPU
  • 其他版本: GPU Parallel Program Development Using CUDA
  • 立即出貨 (庫存=1)

買這商品的人也買了...

相關主題

商品描述

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.

 

 

商品描述(中文翻譯)

使用 CUDA 的 GPU 平行程式開發 教授 GPU 程式設計,通過展示不同系列 GPU 之間的差異來進行。這種方法為讀者準備了下一代及未來幾代的 GPU。本書強調那些將長期保持相關性的概念,而不是特定於平台的概念。同時,本書也提供了與平台相關的解釋,這些解釋與一般化的 GPU 概念同樣有價值。

本書分為三個部分;第一部分開始解釋使用 CPU 多執行緒的平行性。幾個簡單的程式用來演示將一個大型任務分割成多個平行子任務並將其映射到 CPU 執行緒的概念。分析了多種平行化相同任務的方法,並從核心和記憶體操作的角度研究其優缺點。

本書的第二部分介紹了 GPU 大規模平行性。相同的程式在多個 Nvidia GPU 平台上進行平行化,並重複相同的性能分析。由於 CPU 和 GPU 的核心及記憶體結構不同,結果以有趣的方式有所不同。最終目標是讓程式設計師了解所有好的想法以及壞的想法,讓讀者能夠在自己的程式中應用好的想法並避免壞的想法。

本書的第三部分為希望擴展視野的讀者提供指引。它簡要介紹了流行的 CUDA 函式庫(如 cuBLAS、cuFFT、NPP 和 Thrust)、OpenCL 程式語言、使用其他程式語言和 API 函式庫(如 Python、OpenCV、OpenGL,以及 Apple 的 Swift 和 Metal)進行 GPU 程式設計的概述,以及深度學習函式庫 cuDNN。

作者簡介

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

 

 

 

 

 

作者簡介(中文翻譯)

Tolga Soyata 是紐約州立大學奧爾巴尼分校電機與計算機工程系的副教授。