高性能计算术语:GF/s 是什么?
我正在阅读这篇Dobb 博士关于 CUDA 的文章 在我的系统中,全局内存带宽略高于 60 GB/s。 这非常好,直到您认为该带宽必须服务 128 个硬件线程——每个…
通过增加占用率来提高内核性能?
以下是 GT 440 上我的内核的计算视觉分析器的输出: 内核详细信息:网格大小:[100 1 1],块大小:[256 1 1] 寄存器比率:0.84375 ( 27648 / 32768 ) …
如何将嵌套结构的成员复制到 CUDA 设备的内存空间?
我正在尝试将一些嵌套结构复制到设备内存,以便在 CUDA 加速神经网络模拟器中使用内核。此代码链接并运行,但它抛出一些异常和 CUDA 错误: typedef s…
CUDA 中共享内存的原子操作
我使用 GTX 280,其计算能力为 1.3,并支持共享内存上的原子操作。我正在使用 cuda SDK 2.2 和 VS 2005。在我的程序中,我必须广泛使用原子操作,因为…
CUDA OPENGL 互操作性:cudaGLSetGLDevice
遵循CUDA 4.0的编程指南,我调用cudaGLSetGLDevice 在任何其他运行时调用之前。但下一个 cuda 调用 cudaMalloc 返回“所有支持 CUDA 的设备都忙或不可…
CUDA 上的块间屏障
我想在 CUDA 上实现块间屏障,但遇到了严重的问题。 我不明白为什么它不起作用。 #include #include #include #define SIZE 10000000 #define BLOCKS …
使用 CUDA Thrust 查找最大元素值及其位置
如何不仅获取值,还获取最大(最小)元素(res.val 和 res.pos)的位置? thrust::host_vector h_vec(100); thrust::generate(h_vec.begin(), h_vec.e…
JCuda错误:未定义符号:Pointer_buffer
我正在尝试在 Debian Linux(32 位)中运行 JCuda 示例。由于 JCuda 网站上没有适用于 Linux x86 的二进制文件,因此我编译了这些库。现在我正在尝试…
具有该块的输出的cuda过滤器是下一个块的输入
在处理以下过滤器时,我在执行这些代码段以在 GPU 中处理图像时遇到问题: for(int h=0; h
从 Thrust::device_vector 到原始指针并返回?
我了解如何从向量转换为原始指针,但我跳过了如何向后转换的节拍。 // our host vector thrust::host_vector hVec; // pretend we put data in it her…
cuda 头文件 .cuh 私有主机函数
在 cuda 中,我们可以创建扩展名为 .cuh 的头文件,并且可以从任何地方调用这些函数,例如, __device__ void doSomething() { .................... …
使用 CUDA 显示 GPU 优于 CPU 的最简单示例
我正在寻找最简洁的代码量,可以为 CPU(使用 g++)和 GPU(使用 nvcc)编写代码,并且 GPU 的性能始终优于 CPU。任何类型的算法都是可以接受的。 澄…
Parallel NSight for Visual studio 2010 支持在服务器上调试吗?
我已经安装了 Parallel Nsight for Visual Studio 2010。根据我的研究,它无法在没有 NVIDIA 显卡的机器上进行调试。 因此,我想在服务器上调试它(连…
屈服于 OpenMP 中的其他线程/任务
我想将 OpenMP 与 CUDA 结合使用来实现重叠内核执行。这些内核调用都是异步的,但我在启动之间的代码很少,因此各个 OpenMP 线程在尝试启动另一个内核…