问题标签 [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 投票
8 回答
2622 浏览

cuda - GPU作为CPU的可行性?

您认为 GPU 作为像 CUDA 这样的 CPU 计划的未来是什么?您认为它们会成为主流并成为该行业的下一个流行时尚吗?Apple 正在构建一个使用 GPU 执行 CPU 任务的新框架,Nvidia 的 CUDA 项目在科学领域取得了很大的成功。你会建议学生花时间进入这个领域吗?

0 投票
4 回答
16891 浏览

cuda - 使用 CUDA 进行光线追踪

我目前正在实施光线追踪器。由于光线追踪的计算量非常大,而且无论如何我都会研究 CUDA 编程,所以我想知道是否有人有将两者结合的经验。我真的无法判断计算模型是否匹配,我想知道会发生什么。我的印象是,这并不完全是天作之合,但有一个不错的速度增加总比没有好。

0 投票
6 回答
861 浏览

cuda - 常见的编程任务在 GPU 上的转化效果如何?

我最近开始研究一个项目,以确定如何最好地利用现代显卡中可用的处理能力进行一般编程。似乎现场通用 GPU 编程 (GPGPU) 对具有大量数学的科学应用程序有很大的偏见,因为这非常适合 GPU 计算模型。这一切都很好,但大多数人不会把所有时间都花在运行模拟软件等上,所以我们认为有可能创建一个通用基础,以便为大众轻松构建支持 GPU 的软件。

这就引出了我想提出的问题;程序执行的最常见工作类型是什么?由于我们愿意接受适度的性能改进(总比没有好,对吧?)。

我们已经想到了几个主题:

  • 数据管理 - 处理来自数据库等的大量数据。
  • 电子表格类型的程序(与上述有点相关)。
  • GUI 编程(尽管可能无法访问相关代码)。
  • 常用算法,如排序和搜索。
  • 通用集合(并将它们与数据操作算法集成)

还有哪些其他编码任务很常见?我怀疑很多正在编写的代码属于库存管理类别,或者跟踪真实的“对象”。

由于我没有行业经验,我认为可能有许多基本类型的代码比我意识到的更频繁地完成,但它们并没有作为外部产品实现。

高级编程任务以及特定的低级操作都将受到赞赏。

0 投票
10 回答
3570 浏览

cuda - 您是否成功使用了 GPGPU?

我很想知道是否有人通过使用例如nVidia CUDA编写了利用GPGPU的应用程序。如果是这样,您发现了哪些问题,与标准 CPU 相比,您获得了哪些性能提升?

0 投票
6 回答
27689 浏览

cuda - 分配给设备内存的 CUDA 全局(如 C 语言)动态数组

所以,我试图编写一些利用 Nvidia 的 CUDA 架构的代码。我注意到在设备之间进行复制确实会损害我的整体性能,所以现在我正在尝试将大量数据移动到设备上。

由于这些数据用于许多功能,我希望它是全球性的。是的,我可以传递指针,但我真的很想知道在这种情况下如何使用全局变量。

所以,我有想要访问设备分配数组的设备函数。

理想情况下,我可以这样做:

但是,我还没有弄清楚如何创建一个动态数组。我通过如下声明数组找到了解决方法:

虽然这不需要 cudaMalloc 调用,但我更喜欢动态分配方法。

0 投票
6 回答
1427 浏览

c# - 将 C# 方法转换为 C++ 方法

我正在探索将常见 C# 代码构造映射到 C++ CUDA 代码以在 GPU 上运行的各种选项。系统结构如下(箭头代表方法调用):

C# 程序 -> C# GPU 库 -> C++ CUDA 实现库

GPU 库中的方法可能如下所示:

这是 ICollection<> 类型的扩展方法,它在每个元素上运行一个函数。但是,我想做的是调用 C++ 库并让它在 GPU 上运行方法。这将要求函数以某种方式翻译成 C++ 代码。这可能吗?

详细地说,如果我的库的用户执行一个方法(在 C# 中),其中包含一些任意代码,我想将此代码转换为 C++ 等效项,以便我可以在 CUDA 上运行它。我觉得没有简单的方法可以做到这一点,但我想知道是否有任何方法可以做到这一点或达到一些相同的效果。

我想知道的一件事是捕获要在表达式中翻译的函数,并使用它来将其映射到 C++ 等价物。有人有这方面的经验吗?

0 投票
2 回答
3455 浏览

concurrency - 如何让已经编写好的并发程序在 GPU 阵列上运行?

我有一个用 Erlang 编写的神经网络,我刚买了一张带有 240 核 GPU 的 GeForce GTX 260 卡。使用CUDA作为胶水在显卡上运行它是微不足道的吗?

0 投票
5 回答
493 浏览

c++ - 对任意值类型的操作

本文描述了一种在 C# 中允许添加具有为它们定义的 + 运算符的任意值类型的方法。本质上它允许以下代码:

此代码无法编译,因为无法保证 T 类型具有“+”运算符的定义,但使用如下代码可以实现效果:

按照链接查看 Num 类是如何实现这一点的。无论如何,关于这个问题。有什么方法可以在 C 或 C++ 中实现相同的效果?出于好奇,我试图解决的问题是允许 CUDA 内核通过允许它在更多类型上运行来更加灵活/通用。

更新:对于 .NET,Marc Gravell 制作了一个实用程序库,可以非常优雅地解决操作员问题。

0 投票
4 回答
3087 浏览

directx - 我应该现在创建 CUDA 应用程序,还是等待 DirectX 11?

Windows 7 可能会在明年 10 月进入 RTM(以及 DirectX 11),是否值得等待 DirectX 11 的显式 GPGPU 功能,这意味着它将是跨平台的(ATI/Nvidia,而不是 Windows/Linux/Mac/Whatever) ; 还是我现在应该创建一个 CUDA 应用程序?

0 投票
4 回答
8330 浏览

.net - .net 的 CUDA?

我知道有很多 CUDA 语言绑定,比如 PyCUDA,但是 .Net 有什么好的绑定吗?我见过的只有这一个,但我想知道是否还有其他的。