随笔分类 -  GPU

摘要:http://gpgpu.org/static/developer/cudpp/rel/cudpp_1.1/html/index.html 阅读全文
posted @ 2015-03-31 17:31 青竹居士 阅读(194) 评论(0) 推荐(0)
摘要:概要cudaError_t cudaMallocPitch( void** devPtr,size_t* pitch,size_t widthInBytes,size_t height )说明向设备分配至少widthInBytes*height字节的线性存储器,并以*devPtr的形式返回指向所分配... 阅读全文
posted @ 2015-03-31 15:56 青竹居士 阅读(2603) 评论(0) 推荐(0)
摘要:原文链接 1 /* 2 * Copyright 徐洪志(西北农林科技大学.信息工程学院). All rights reserved. 3 * Data: 2012-4-20 4 */ 5 // 6 // 此程序是演示了1D和2D纹理存储器的使用 7 #include 8 #inc... 阅读全文
posted @ 2015-01-04 16:43 青竹居士 阅读(1692) 评论(0) 推荐(0)
摘要:纹理存储器(texture memory)是一种只读存储器,由GPU用于纹理渲染的图形专用单元发展而来,因此也提供了一些特殊功能。纹理存储器中的数据位于显存,但可以通过纹理缓存加速读取。在纹理存储器中可以绑定的数据比在常量存储器可以声明的64K大很多,并且支持一维、二维或者三维纹理。在通用计算中,纹... 阅读全文
posted @ 2015-01-04 16:25 青竹居士 阅读(4091) 评论(0) 推荐(0)
摘要:众所周知,Global memory没有Cache,访问速度很慢,Shared memory访问速度很快,但是容量很小,对于较大的数组,将其绑定至texture memory往往是个不错的选择。Texture memory可以cache,而且容量很大。在当前的CUDA版本中,3D的线性内存是无法直接... 阅读全文
posted @ 2015-01-04 16:21 青竹居士 阅读(1970) 评论(1) 推荐(0)
摘要:并行方向需要学习的数学知识http://dev.gameres.com/Program/Visual/3D/GPGPU_math_Tutorial.html 阅读全文
posted @ 2015-01-04 15:19 青竹居士 阅读(259) 评论(0) 推荐(0)
摘要:原文链接简单描述一下自己要做的事情:(1)CPU三维的vector--->(2)CPU三维数组--->(3)转换到GPU中的三维数组--->(4)转换到CPU中的三维数组,而其中问题主要出在第3、4步。主要是没有理解一个问题,那就是“cuda的各种拷贝一定要是内存连续的”。而自己在申请三维数组的时候... 阅读全文
posted @ 2015-01-03 16:01 青竹居士 阅读(1971) 评论(0) 推荐(0)
摘要:原文链接CUDA存储器类型:每个线程拥有自己的register and loacal memory;每个线程块拥有一块shared memory;所有线程都可以访问global memory;还有,可以被所有线程访问的只读存储器:constant memory and texture memory1... 阅读全文
posted @ 2015-01-02 21:27 青竹居士 阅读(248) 评论(0) 推荐(0)
摘要:原文链接概述:线性存储器可以通过cudaMalloc()、cudaMallocPitch()和cudaMalloc3D()分配1、1D线性内存分配1 cudaMalloc(void**,int) //在设备端分配内存2 cudaMemcpy(void* dest,void* source,in... 阅读全文
posted @ 2015-01-02 21:26 青竹居士 阅读(425) 评论(0) 推荐(0)
摘要:原问链接概述:数组分配可以通过cudaMallocArray()和cudaMalloc3DArray()1、cudaMallocArray()cudaError_t cudaMallocArray ( struct cudaArray ** array, const str... 阅读全文
posted @ 2015-01-02 21:24 青竹居士 阅读(1056) 评论(0) 推荐(0)
摘要:原文链接1、cudaMemcpy() cudaMalloc() //线性内存拷贝1 //线性内存拷贝2 cudaMalloc((void**)&dev_A, data_size);3 cudaMemcpy(dev_A, host_A, data_size, cudaMemcpyHostToDevic... 阅读全文
posted @ 2015-01-02 21:23 青竹居士 阅读(1831) 评论(0) 推荐(0)
摘要:http://hpcbbs.it168.com/forum.php?mod=viewthread&tid=1643根据上面链接的帖子研究了下三维数组,就像他自己说的一样是有问题的,我自己修改了下,结果终于正确了。大家有兴趣的可以对照着看看。整个过程关键参考了这篇文章http://www.xuebuy... 阅读全文
posted @ 2015-01-02 21:11 青竹居士 阅读(2100) 评论(0) 推荐(0)
摘要:CUDA5.0没有cutil.h头文件,貌似用helper_cuda.h文件代替,暂时没出问题。 阅读全文
posted @ 2015-01-02 20:50 青竹居士 阅读(535) 评论(0) 推荐(0)
摘要:GPU端耗时统计 1 cudaEvent_t start, stop; 2 checkCudaErrors(cudaEventCreate(&start)); 3 checkCudaErrors(cudaEventCreate(&stop)); 4 checkCuda... 阅读全文
posted @ 2015-01-02 17:06 青竹居士 阅读(2089) 评论(0) 推荐(0)
摘要:http://developer.download.nvidia.com/compute/cuda/4_1/rel/toolkit/docs/online/index.html英伟达CUDA库说明文档。在线查找便捷入口! 阅读全文
posted @ 2014-12-30 21:07 青竹居士 阅读(343) 评论(0) 推荐(0)
摘要:问题描述:CUDA: 使用cudaEventElapsedTime时返回device not ready error强调下我是用谷歌大神搜索到的结构哦!http://stackoverflow.com/questions/6551121/cuda-cudaeventelapsedtime-retur... 阅读全文
posted @ 2014-12-30 21:04 青竹居士 阅读(1218) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2014-12-21 15:30 青竹居士 阅读(23) 评论(0) 推荐(0)
摘要:所有信息是我个人在使用过程中的小小经验,不是什么权威性文档,旨在帮助需要研究此类信息的朋友少走点弯路。整个项目的主函数,一切从这里开始在cudpp_testrig右键属性页里找到调试,在命令行里输入相应的参数,我这里选择segscan这个方法下面两找图是使用说明,在不输入任何命令参数的情况下会提示如... 阅读全文
posted @ 2014-12-18 20:40 青竹居士 阅读(1045) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2014-12-16 18:06 青竹居士 阅读(449) 评论(0) 推荐(0)
摘要:原文链接偶有兴趣测试了一下题目中提到的这两个函数,为了满足对齐访问数据,咱们平时可能会用到cudamallocPitch,以为它会带来更高的效率。呵呵,这里给出一段测试程序,大家可以在自己的机器上跑跑,你会发现这两个函数在某些情况下是一样的。[cpp]view plaincopy#include#i... 阅读全文
posted @ 2014-12-15 21:38 青竹居士 阅读(2034) 评论(0) 推荐(0)