b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

gpu高性能运算之cuda_高性能计算_gpu高性能计算之cuda(2)

电脑杂谈  发布时间:2017-01-30 22:00:07  来源:网络整理

我们的CUDA编程,很明显是GPU和CPU一起来处理的嘛——异构编程!对的,我自己的理解是就一个工程而言:CPU处理串行计算业务,GPU处理并行计算业务,这里将的并行都是并行度可观的哦,不是说两个元素你也来GPU上计算,那样是不环保的——会浪费很多GPU的资源!

说道环保,我想多说一句,在GPU编程,很体现“绿色”理念。48个核,你如果写的好,48个核全在干活,而且干的是有意义的活,那么你是合理的利用资源,如果你只让一个核在干有意义的活,其他的都在空转,那么你很浪费电哦。

3 你好,CUDA!3.1 开发环境配置

第一次和同事交谈,我说你和我说说C-U-D-A。gpu高性能运算之cuda他说:哭打……苦打…… ……。半天后,我说,你和我说说C-U-D-A,你说哭打是什么东西……它说哭打就是C-U-D-A。gpu高性能运算之cuda,顿时傻眼了,原来这东西行业里年哭打,对的,Cu - Da,连起来就是这么发音的,我的无知啊。我们还是用中文解释吧:CUDA的意思是统一计算设备架构。

在win7+vs2008+CUDA5.0的环境验,是一种新的尝试,我自己配的时候,很少或者就没有5.0的配置博客文档等等。因为5.0的那一场雪比2010年来的更晚一些……

5.0是和2.0、3.0、4.0都会有那么一点不同的,是集成了SDK和TOOL两个东西,之前是分开的,现在是合在一起的。其实是差不多的,但是,这一分一合,就会给人很不习惯。不过,我虽然愚钝,但是,试了几次之后还是摸索成功。当第一个helloworld输出后,心里是有那么一点小激动的,立马跑到小区门口,买了半斤羊肉吃了,因为为了配这一套环境,我中午饭都没吃!我这只哭打小菜鸟就是可怜啊!

3.2 特殊的"hello world"

搭建好环境,你肯定想看看我的helloworld程序,对的,但是我不想输出helloworld,我想干一件事情是:我在CPU上创建个变量,传到GPU中,然后,在GPU中赋值,然后传出来。这件事情如果成功了,是不是可以说明,通了+GPU工作了!网上一搜的CUDA的helloworld程序,都是在CPU上输出helloworld,那多不过瘾。

ch = {'h', 'e', 'l', 'l', 'o'};

4 敲开编程的门

函数类型

用来修饰内核函数的,内核函数是什么呢,内核函数是跑在GPU上的函数;与之对应的是主机函数,用__host__修饰,也可以缺省,跑在CPU上。因此,CPU也叫主机,GPU也叫设备。通常定义这个内核函数,我喜欢在函数名前加个kernel作为修饰,让自己清楚点。

也是用来修饰内核函数的,那和__global__有什么区别吗?对的。__global__修饰的内核函数只能被主机函数调用;__device__修饰的内核函数只能被内核函数调用,应该很好理解。

主机函数,供主机函数调用,可缺省哦,一般情况下,都是缺省的,知道这个东西就行。

存储类型

__constant__:常量存储,只读。定义在所有函数之整个文件。

内建变量

出处:


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-29642-2.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    • 鲁魏公
      鲁魏公

      你怎么当不了明星啊

    热点图片
    拼命载入中...