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

标签 concurrency erlang cuda parallel-processing gpu

我有一个用Erlang编写的神经网络,我刚刚购买了带有240核心GPU的GeForce GTX 260卡。使用CUDA作为胶水在图形卡上运行这很简单吗?

最佳答案

不,使用CUDA不是一件小事。

CUDA编程模型基本上使用C(带有一些附加功能),但是为了充分利用GPGPU的功能,您必须确保算法遵循CUDA准则。 (请参阅NVidia CUDA Programming Guide)

例如,为了获得最佳的内存性能(大约70Gbps),您需要在流模式下通过合并来访问内存,分支在GPU上的成本也很高,因此您应尽可能避免有条件的使用。查看SDK随附的指南和示例,它们将为您提供一个很好的起点

关于concurrency - 如何使已编写的并发程序在GPU阵列上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/213337/

相关文章:

matlab - 在 Matlab 中的 CUDA 内核启动之间维护 gpuArray 数据

c - Mutex 不同步 C++

recursion - Erlang:使用递归从列表中选择唯一项

api - CUDA数学库的头文件是哪个?

encoding - 如何在 elixir 中将二进制转换为 base10(十进制)整数

list - Erlang 记录项列表

c++ - cuda-gdb 内核断点不起作用

go - 我可以使用锁来确保指令顺序吗?

java - 当等待 Vector 对象的线程大于 6 时,wait 和 notificationAll 机制无法按预期工作

java - onMessage() : How to handle ? 中的 Long traitement 我希望线程调用此方法