标签: cuda

NVIDIA与AMD:GPGPU性能

我想听听有两种编码经验的人的意见.我自己,我只有NVIDIA的经验.

NVIDIA CUDA似乎比竞争对手更受欢迎.(只计算这个论坛上的问题标签,'cuda'优于'opencl'3:1,'nvidia'优于'ati '15:1,并且根本没有'ati-stream'标签.

另一方面,根据维基百科,ATI/AMD显卡应该具有更大的潜力,特别是每美元.目前市场上最快的NVIDIA显卡,GeForce 580(500美元),评级为1.6单精度TFlops.AMD Radeon 6970的售价为370美元,售价为2.7 TFlops.580具有512个执行单元,772 MHz.6970具有1536个执行单元,频率为880 MHz.

AMD相对于NVIDIA的纸张优势有多现实,是否可能在大多数GPGPU任务中实现?整数任务会发生什么?

cuda gpgpu nvidia ati opencl

103
推荐指数
7
解决办法
5万
查看次数

如何为CUDA内核选择网格和块尺寸?

这是一个关于如何确定CUDA网格,块和线程大小的问题.这是对此处发布的问题的另一个问题:

/sf/answers/395068691/

在此链接之后,talonmies的答案包含一个代码片段(见下文).我不理解评论"通常由调整和硬件约束选择的值".

我没有找到一个很好的解释或澄清,在CUDA文档中解释了这一点.总之,我的问题是如何在给定以下代码的情况下确定最佳块大小(=线程数):

const int n = 128 * 1024;
int blocksize = 512; // value usually chosen by tuning and hardware constraints
int nblocks = n / nthreads; // value determine by block size and total work
madd<<<nblocks,blocksize>>>mAdd(A,B,C,n);
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我从上面的链接开始我的问题,因为它部分回答了我的第一个问题.如果这不是在Stack Overflow上提问的正确方法,请原谅或建议我.

optimization performance cuda gpu nvidia

102
推荐指数
3
解决办法
9万
查看次数

GPU的顶级命令使用CUDA

我正在尝试监控使用cuda和MPI的进程,有什么方法可以做到这一点,比如命令"top"但是监视GPU呢?

cuda resource-monitor

96
推荐指数
12
解决办法
11万
查看次数

全局和设备功能之间的差异

任何人都可以描述之间的差异__global____device__

我应该何时使用__device__,何时使用__global__

cuda

96
推荐指数
8
解决办法
5万
查看次数

Java中GPGPU/CUDA/OpenCL的最佳方法?

图形处理单元(GPGPU)上的通用计算是一种非常有吸引力的概念,可以利用GPU的强大功能进行任何类型的计算.

我喜欢使用GPGPU进行图像处理,粒子和快速几何操作.

现在看来,这个领域的两个竞争者似乎是CUDA和OpenCL.我想知道:

  • OpenCL在Windows/Mac上是否可以从Java使用?
  • 有哪些库与OpenCL/CUDA接口?
  • 是否直接使用JNA?
  • 我忘记了什么吗?

任何真实世界的经验/例子/战争故事都值得赞赏.

java cuda gpgpu opencl

92
推荐指数
5
解决办法
4万
查看次数

如何从命令行获取nvidia驱动程序版本?

为了调试CUDA代码和检查兼容性,我需要找出我安装的GPU的nvidia驱动程序版本.我找到了如何获得cuda版本?但这对我没有帮助.

linux cuda driver

92
推荐指数
6
解决办法
15万
查看次数

什么是银行冲突?(做Cuda/OpenCL编程)

我一直在阅读CUDA和OpenCL的编程指南,我无法弄清楚银行冲突是什么.他们只是倾向于如何解决问题而不详细说明主题本身.任何人都可以帮我理解吗?如果帮助是在CUDA/OpenCL的背景下,或者只是计算机科学中的银行冲突,我没有偏好.

cuda nvidia opencl bank-conflict

91
推荐指数
4
解决办法
4万
查看次数

CUDA与我的gcc版本不兼容

我在编译CUDA SDK附带的一些示例时遇到了麻烦.我已经安装了开发人员驱动程序(版本270.41.19)和CUDA工具包,最后是SDK(两者都是4.0.17版本).

最初它根本没有编译:

error -- unsupported GNU version! gcc 4.5 and up are not supported!
Run Code Online (Sandbox Code Playgroud)

我发现81行负责:/usr/local/cuda/include/host_config.h并将其更改为:

//#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 4)
#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 6)
Run Code Online (Sandbox Code Playgroud)

从那时起,我只得到了一些编译的例子,它停止了:

In file included from /usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr.h:162:0,
             from /usr/include/c++/4.6/ext/atomicity.h:34,
             from /usr/include/c++/4.6/bits/ios_base.h:41,
             from /usr/include/c++/4.6/ios:43,
             from /usr/include/c++/4.6/ostream:40,
             from /usr/include/c++/4.6/iterator:64,
             from /usr/local/cuda/include/thrust/iterator/iterator_categories.h:38,
             from /usr/local/cuda/include/thrust/device_ptr.h:26,
             from /usr/local/cuda/include/thrust/device_malloc_allocator.h:27,
             from /usr/local/cuda/include/thrust/device_vector.h:26,
             from lineOfSight.cu:37:
/usr/include/c++/4.6/x86_64-linux-gnu/bits/gthr-default.h:251:1: error: pasting         "__gthrw_" and "/* Android's C library does not provide pthread_cancel, check …
Run Code Online (Sandbox Code Playgroud)

debian gcc cuda

86
推荐指数
8
解决办法
11万
查看次数

哪个TensorFlow和CUDA版本组合兼容?

我注意到一些较新的TensorFlow版本与较旧的CUDA和cuDNN版本不兼容.是否存在兼容版本的概述,甚至是官方测试组合的列表?我在TensorFlow文档中找不到它.

compatibility cuda version tensorflow cudnn

85
推荐指数
4
解决办法
13万
查看次数

为什么CUDA如此快速地固定内存?

当我使用固定内存进行CUDA数据传输时,我观察到数据传输的大幅加速.在linux上,实现此目标的底层系统调用是mlock.从mlock的手册页中,它声明锁定页面可以防止它被换出:

mlock()锁定从addr开始并继续len字节的地址范围内的页面.当调用成功返回时,包含指定地址范围一部分的所有页面都保证驻留在RAM中;

在我的测试中,我在我的系统上有一些可用内存,因此从来没有任何风险可以将内存页面换掉,但我仍然观察到加速.谁能解释一下这里到底发生了什么?,非常感谢任何见解或信息.

c c++ linux cuda

76
推荐指数
3
解决办法
2万
查看次数