gpu-programming相关内容

如何为Opencl应用程序使用hadoop MapReuce框架?

我正在开发一个opencl应用程序,其基本目标是在GPU平台上实现数据挖掘算法。我想使用Hadoop分布式文件系统并希望在多个节点上执行该应用程序。我使用的是MapReduce框架,我将基本算法分成了两部分,即'Map'和'Reduce'。 我之前从未在hadoop工作过,所以我有一些问题: 我是否在Java中使用Hadoop和Mapeduce框架编写应用程序? 我已经编写了map和 ..

Cuda内核与减少 - 逻辑错误的点积的2矩阵

我刚刚开始与CUDA,我试图包装我的大脑的CUDA减少算法。在我的情况下,我一直在试图得到两个矩阵的点积。但我得到了正确的答案只有矩阵2。对于任何其他大小的矩阵,我错了。 这只是测试,所以我保持矩阵大小很小。只有大约100所以只有1块将适合所有。 任何帮助将非常感谢。非常感谢! 以下是正式代码 float * ha = new float [n]; // matrix a ..
发布时间:2017-03-05 19:16:37 其它硬件开发

nvidia-smi挥发性GPU利用率解释?

我知道 nvidia-smi -l 1 会每秒钟提供GPU使用率(类似于以下内容)。然而,我将不胜感激的解释了什么易失性GPU-Util 真的意味着。 + ------是否使用的SM数量超过总SM数量或占用率? -------------------------------------------------- --------------------- + | NVIDIA-SMI ..
发布时间:2017-03-05 18:55:43 其它硬件开发

编译opencv与gpu cuda支持

我使用OpenCV 2.3.1与CUDA 4.0。 我已经安装了OpenCV 2.3.1通过CMAKE with WITH_CUDA标志。然后我编译的OpenCV解决方案在发布和调试模式,但仍然是当我使用 getCudaEnabledDevice 函数 CV :: GPU 它返回0.这意味着它没有检测到CUDA启用的设备。 似乎我做了一切正确,仍然发生了什么?? 任何人都可以建议 ..
发布时间:2017-03-05 18:35:22 其它硬件开发

使用CUDA C的2D矩阵的积分图像或汇总面积表

我想计算 2D矩阵的总面积表,其中行数和列数不相等。我遇到了一个小问题,其中我的代码似乎功能okay行和列相等,但它不能计算最终输出的最后一行,当行和列不相等。 积分图像/汇总区域表的基本算法: 基本上,在积分和中,每个像素或索引元素计算其上方和后方的所有矩阵元素的和。例如,对于具有以下元素的3x2输入数组: [5,2 | | 5,2 | | 5,2] ..
发布时间:2017-03-04 16:26:56 其它硬件开发

简单的CUDA程序执行没有GPU硬件使用NVIDIA GPU计算SDK 4.0和microsoft VC ++ 2010 express

我是GPU计算的新手,但在某个地方我读过,可以使用模拟器/模拟器执行CUDA程序,没有GPU卡。我在Windows Vista上安装了NVIDIA的GPU Computing SDK 4.0和Visual C ++ 2010 Express。我想知道: 使用NVIDA的Computing SDK 4.0是否可以运行没有GPU的CUDA代码和Visual C ++ 2010 express? ..
发布时间:2017-03-04 16:13:09 其它硬件开发

Cholesky分解与CUDA

我试图使用cuSOLVER库实现Cholesky分解。我是一个初学者CUDA程序员,我一直指定块大小和网格大小,但我不能找出这可以由程序员用cuSOLVER函数显式地设置。 以下是文档: http://docs.nvidia.com /cuda/cusolver/index.html#introduction QR分解是使用cuSOLVER库实现的(请参阅此处的示例: http://d ..
发布时间:2017-03-04 16:10:07 其它硬件开发

调用具有2个GPU的cudaMalloc时性能较差

我有一个应用程序,我在用户的系统上分割GPU之间的处理负载。基本上,当由主应用程序线程周期性触发时,每个GPU具有启动 GPU处理间隔的CPU线程。 考虑以下图片(使用NVIDIA的CUDA分析器工具生成)以获取 GPU处理间隔的示例 - 这里应用程序正在使用单GPU。 p> 正如你可以看到,GPU处理时间的一大部分是由两个排序操作消耗,我使用Thrust库(thrust :: ..

处理Ctrl + C异常与GPU

我正在使用一些GPU程序(使用CUDA 4.1和C),有时(很少)我必须杀死程序中途使用Ctrl + C来处理一些异常。以前我尝试使用CudaDeviceReset()函数,但是 talonmies的此回复取代了我对CudaDeviceReset()的信任, ),因此我开始处理这种例外的老式方式,即“计算机重新启动”。随着项目规模的增长,这种方法变得头痛。 解决方案 我认为这个问题更基础 ..
发布时间:2017-03-04 15:43:05 其它硬件开发

在GPU编程中使用条件语句时,工作项执行什么?

如果您的工作项目在波前执行,并且有一个条件,例如: if(x){ ... } else { .... } 工作项执行什么?是这样的情况,其中波前中的所有工作项将执行第一分支(即 x == true )。如果没有x为false的工作项,那么跳过其余的条件语句? 如果一个工作项采用备用路径会发生什么。我告诉所有工作项将执行备用路径(因此执行两个路径?) ..
发布时间:2017-03-04 14:26:42 其它硬件开发

GPU的哈希表实现

我正在寻找一个哈希表实现,我可以使用CUDA编码。有什么好的一个在那里。像Python字典。我将使用字符串作为我的键 解决方案 Alcantara等人已经展示了用于在GPU上构建哈希表的数据并行算法。我相信该实施已作为 CUDPP 的一部分提供。 也就是说,你可能想重新考虑你原来的哈希表选择。按键对数据进行排序,然后在大规模并行设置中可以获得更好的性能。你想解决什么问题? ..
发布时间:2017-03-04 13:01:57 其它硬件开发

CUDA用于大矩阵的矩阵乘法

我有以下矩阵乘法代码,使用CUDA 3.2和VS 2008.实现。我在Windows服务器2008 r2企业上运行。我正在运行一个Nvidia GTX 480.以下代码适用于“宽度”(矩阵宽度)的值高达约2500左右。 int size = Width * Width * sizeof(float); float * Md,* Nd,* Pd; cudaError_t err = ..
发布时间:2017-03-04 12:56:45 其它硬件开发

printf里面CUDA __global__函数

我目前正在GPU上写一个矩阵乘法,并想调试我的代码,但由于我不能在一个设备函数中使用printf,还有其他一些我可以做的,看看这个函数里面发生了什么。我当前的函数: __ global__ void MatrixMulKernel(Matrix Ad,Matrix Bd,Matrix Xd){ int tx = threadIdx.x; int ty = threadIdx.y; ..
发布时间:2017-03-04 12:55:37 其它硬件开发