问题标签 [cuda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1344 浏览

arrays - CUDA - 更好的占用与更少的全局内存访问?

我的 CUDA 代码必须使用(减少到均值/标准,计算直方图)4 个数组,每个 2048 个浮点数,并且已经从以前的内核存储在设备内存中。

通常建议启动至少与我拥有的多处理器一样多的块。然而,在这种情况下,我可以将这些数组中的每一个加载到单个块的共享内存中,因此只启动 4 个块。

这远非“让 GPU 保持忙碌”,但如果我使用更多块,我将需要通过全局内存进行更多的块间通信,并且我预计由于传输数据所花费的额外时间,多处理器的任何额外利用都会受到影响进出全局内存。

在这种情况下并行化的最佳方法是什么?

0 投票
5 回答
13035 浏览

memory-management - CUDA 分配数组数组

我在 CUDA 中分配数组时遇到了一些麻烦。

我做错了什么?

0 投票
5 回答
5922 浏览

c++ - 为什么 OpenCV 不能在 NVCC 中编译?

我正在尝试将 CUDA 和 openCV 集成到一个项目中。问题是使用 NVCC 时 openCV 无法编译,而普通的 c++ 项目编译得很好。这对我来说似乎很奇怪,因为我认为 NVCC 将所有主机代码都传递给了 c/c++ 编译器,在本例中是 Visual Studio 编译器。

我得到的错误是?

c:\opencv2.0\include\opencv\cxoperations.hpp(1137): error: no operator "=" 匹配这些操作数操作数类型是: const cv::Range = cv::Range

c:\opencv2.0\include\opencv\cxoperations.hpp(2469):错误:多个重载函数“std::abs”实例与参数列表匹配:函数“abs(long double)”函数“abs( float)" 函数 "abs(double)" 函数 "abs(long)" 函数 "abs(int)" 参数类型为: (ptrdiff_t)

所以我的问题是为什么使用相同编译器(应该)的差异,其次是我如何解决这个问题。

0 投票
4 回答
578 浏览

concurrency - 为什么并发编程的书总是忽略数据并行性?

在过去几年中,通过 OpenCL 和 CUDA 等系统向数据并行编程发生了重大转变,但即使在过去六个月内出版的书籍甚至从未提及数据并行编程的主题。

它并不适合所有问题,但似乎这里有一个没有得到解决的重大差距。

0 投票
4 回答
16436 浏览

matlab - 如何使用 CUDA 在 GPU 上运行 MATLAB 代码?

我想使用 NVIDIA 的 CUDA 在 GPU 上运行 MATLAB 代码。我发现了几个 3rd-party 引擎:

有人会推荐这些还是那里有更好的?有什么提示或建议吗?

0 投票
3 回答
1273 浏览

c - CUDA:错误 C2491:'log1p':不允许定义 dllimport 函数

我正在尝试将 CUDA 集成到现有项目中,其中创建了几个库(DLL)。我从一个计算点积的非常简单的内核开始:

该内核由主机脚本调用:

我使用 cmake 生成构建文件,并使用 Visual Studio 2008 Pro 编译它。如果我只是使用一个 .cu 文件和一个不调用内核的 foobar 函数,它执行得很好。但是使用上面的代码,我得到以下错误:

调用 CUDA 代码的结果代码将导出为 DLL。这是问题吗?

0 投票
2 回答
2476 浏览

visual-studio-2008 - CUDA & Visual C++ & Windows Forms 应用程序

我正在使用Microsoft Visual C++ 2008 Express Edition,我必须使用CUDA技术。我已经了解如何使用它来创建控制台应用程序。但我不知道如何使它在带有表单(对话框、按钮、标签等)的 win32 应用程序中工作。知道吗?

0 投票
2 回答
1389 浏览

memory - CUDA边界检查器?

是否有与 CUDA 的边界检查器或 purify 或 valgrind 等效的工具?

我基本上是在寻找可以告诉我是否在分配的内存之外读取或写入的东西。

0 投票
1 回答
331 浏览

visual-studio - CUDA:仅在设备仿真模式下出现链接错误

我正在编译一个运行良好的 dll,除非我使用 -deviceemu 模式。

在这种情况下,我收到以下几个链接错误:

CUDAKernel_ColourHist.obj:错误 LNK2019:未解析的外部符号 ___cudaMutexOperation@4 在函数 ___uAtomicAdd 1>CUDAKernel_1.obj 中引用:错误 LNK2001:未解析的外部符号 ___cudaMutexOperation@4 1>CUDAKernel_2.obj:错误 LNK2001:未解析的外部符号 ___cudaMute@4

这让我相信也许我没有链接正确的文件,但我相信我是。我正在使用 Visual Studio,任何帮助都将不胜感激。

0 投票
1 回答
1182 浏览

visual-studio-2008 - 无法在 VS 2008 中编译 CUDA 应用程序

我没有尝试将 CUDA 与 Visual Studio 2008 Professional 一起使用。我使用的是 Windows 7 64 位,我已经完成了以下步骤:
- 下载并安装了 CUDA 驱动程序、工具包和 SDK。我可以从 SDK 运行任何示例。
- 下载并安装了CUDA VS 向导
当我尝试创建 CUDA Win 应用程序时出现以下编译错误:
错误 1 ​​致命错误 LNK1181:无法打开输入文件 '.\x64\Debug\main.obj'
任何想法如何解决?