关于CUDA的一些学习资料

http://www.cnblogs.com/5long/p/cuda-learning.html

前言

最近看了一些关于CUDA方面的资料,并粗略地浏览了两本关于CUDA和GPGPU的书(《GPGPU编程技术:从GLSL、CUDA到OpenCL》《CUDA并行程序设计:GPU编程指南》),对于CUDA目前本人也是处于正在入门的阶段。在此汇编CUDA的学习资料,方便以后的学习。

关于GPGPU

所谓GPGPU,就是把强大的图形处理器应用于日益复杂的计算工作。究其本质,图形处理单元(Graphices Processor Unit, GPU)是为高速图形处理而设计的,它具有天然的并行性,程序并行运行自然要比串行快很多。

早期的GPGPU编程比较痛苦,经典的GPGPU需要使用通用的图形API,比如OpenGL,而图形API并不是为了通用程序而设计的,所以需要使用大量的技巧,让通用计算的数据“看起来像幅图”。除了难以掌握外,更重要的是不能根据硬件特性获取硬件应有的性能,于是就产生了CUDA。

关于CUDA

CUDA全名计算统一设备架构(Compute Unified Device Architecture, CUDA),东家是英伟达(NVIDIA)。CUDA是专门为通用计算而设计的(Tesla卡甚至连图形输出都没有,专为计算而设计),CUDA采用一种简单的数据并行模型,再结合编程模型,从而无需操纵复杂的图形基元,CUDA使得GPU看起来和别的可编程设备一样。

CUDA书籍

更多书籍查看豆列GPGPU&CUDA

CUDA Online

在线课程

其它

CUDA作为并行计算架构,通常会和其它并行架构一起配合使用。如OpenMP、OpenACC、MPI,OpenACC是NVIDIA明确支持的。

结语

本文主要整理收集了CUDA的相关书籍和资料,以供学习时方便查阅,整理可能不完整。

参考文献

  1. 库克. CUDA并行程序设计[M]. 机械工业出版社, 2014.
  2. 仇德元. GPGPU编程技术. 机械工业出版社, 2011.

猜你喜欢

转载自blog.csdn.net/chengde6896383/article/details/80993415