摘要: 矩阵乘法非常适合在GPU上并行运行,但是使用GPU并行后能获得多大的性能提升?本文将通过一些实验分析CUDA程序的性能。本文主要记录了本人测试CUDA程序性能的结果,并对结果进行了分析,从测试结果和分析可以为并行程序和优化性能带来一些启示。 阅读全文
posted @ 2016-12-02 20:59 张朝龙(行之) 阅读(7387) 评论(0) 推荐(0) 编辑
摘要: 本文讲述使用Python编写CUDA程序,从而加速Python代码。其中包括两种方式:Numba和PyCUDA,分别展示了这两种方法的使用方式,分析并对比了这两种方法以及其适用的情景。 阅读全文
posted @ 2016-09-20 21:58 张朝龙(行之) 阅读(36939) 评论(0) 推荐(0) 编辑
摘要: 本文首先简要介绍了卷积运算,然后使用Python实现了卷积运行的代码,接着讨论了基于FFT的快速卷积算法,并使用Python实现了FFT卷积,接着对直接卷积和基于FFT的快速卷积算法的性能进行了分析,从实验结果可以看出,FFT卷积相比直接卷积具有更快的运行速度。最后,基于CUDA实现了直接卷积算法,并且使用cuFFT和thrush在CUDA平台实现了基于FFT的快速卷积算法。 阅读全文
posted @ 2016-07-06 19:20 张朝龙(行之) 阅读(22185) 评论(0) 推荐(1) 编辑
摘要: "CUDA并行算法系列之规约" 前言 规约是一类并行算法,对传入的N个数据,使用一个二元的符合结合律的操作符⊕,生成1个结果。这类操作包括取最小、取最大、求和、平方和、逻辑与/或、向量点积。规约也是其他高级算法中重要的基础算法。 除非操作符⊕的求解代价极高,否则规约倾向于带宽受限型任务(bandwi 阅读全文
posted @ 2016-06-15 19:34 张朝龙(行之) 阅读(16746) 评论(1) 推荐(0) 编辑
摘要: 前言 关于混合C 和C++的编程方式,本人之前写过一篇博客(参见 "混合语言编程:C 使用原生的Directx和OpenGL" ),在之前的博客中,介绍了在C 的Winform和WPF下使用原生的Direct和OpenGL进行绘图,主要使用的方式是声明一个函数为导出函数,然后就可以在C 中使用这个函 阅读全文
posted @ 2016-03-07 19:28 张朝龙(行之) 阅读(3305) 评论(3) 推荐(0) 编辑
摘要: CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和[CUDA Toolkit Documentation](http://docs.nvidia.com/cuda/index.html)的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本文将介绍CUDA的内存结构,通过实例展示寄存器和共享内存的使用。 阅读全文
posted @ 2015-11-01 18:25 张朝龙(行之) 阅读(7811) 评论(0) 推荐(0) 编辑
摘要: CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和[CUDA Toolkit Documentation](http://docs.nvidia.com/cuda/index.html)的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本文将介绍CUDA的线程模型,通过实例代码(矢量加法和矩阵加法)演示CUDA下的并行程序设计。 阅读全文
posted @ 2015-10-29 18:17 张朝龙(行之) 阅读(4434) 评论(1) 推荐(0) 编辑
摘要: CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和CUDA Toolkit Documentation的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本文对CUDA进行简单介绍,并通过实例代码演示怎么编写在GPU上运行的代码,最后写一段代码来查询本机GPU的设备参数。 阅读全文
posted @ 2015-10-26 13:35 张朝龙(行之) 阅读(5104) 评论(0) 推荐(0) 编辑
摘要: CUDA并行程序设计系列是本人在学习CUDA时整理的资料,内容大都来源于对《CUDA并行程序设计:GPU编程指南》、《GPU高性能编程CUDA实战》和CUDA Toolkit Documentation的整理。通过本系列整体介绍CUDA并行程序设计。内容包括GPU简介、CUDA简介、环境搭建、线程模型、内存、原子操作、同步、流和多GPU架构等。本文对GPU技术进行简单介绍。 阅读全文
posted @ 2015-10-23 17:59 张朝龙(行之) 阅读(2758) 评论(0) 推荐(1) 编辑
摘要: 在此汇编CUDA的学习资料,方便以后的学习。 阅读全文
posted @ 2015-10-15 19:36 张朝龙(行之) 阅读(2084) 评论(0) 推荐(3) 编辑
本博客文章采用“署名-非商业性使用-禁止演绎”协议,协议详细内容请参考 CC BY-NC-ND 4.0