随想录(cuda编程)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com


    很早就知道gpu可以被用来进行加速处理,但是不知道基本原理是什么。昨天看了一下别人的示范代码,突然之间明白了很多。为了防止自己忘记这些知识点,特地做如下纪录。


1、显卡编程

    gpu主要是指显卡上的处理器部分。显卡和cpu之间主要通过pci或者pcie连接,所以必然要求生成的可执行文件一部分在host运行、一部分在gpu运行。


2、cuda文件格式

    一般以cu作为后缀。


3、cuda的构成

    cuda和基本的c语言文件没有差别,只是需要注意的是,那些标记为__global的函数才是真正在gpu上运行的代码。


4、cuda和mpi关系

    mpi主要是intel利用cpu并发执行的lib,cuda则是利用gpu运行的库。


5、cuda怎么编译

    建议用nvidia提供的nvcc进行编译。


6、asic、fpga、cpu、gpu加速

    机器学习要求我们必须穷尽各种加速方法。asic侧重于controller加速、表现在编解码、加密方面。fpga可用于特定的算法处理,虽然效果最好,但是成本最高。cpu加速最简单,但是成本不好控制、编写有难度。gpu是次优于cpu的方法,它可以降低cpu的负担,又可以承担一定的计算任务。


7、cuda 与linux

    随着tensorflow的流行,cuda也被用于深度学习。一般cuda和ubuntu配合比较多,建议大家多多学习。


8、示例代码,参考链接

   https://blog.csdn.net/gamesdev/article/details/17232829


猜你喜欢

转载自blog.csdn.net/feixiaoxing/article/details/80299514