【发布时间】:2011-02-07 16:12:51
【问题描述】:
图形处理单元上的通用计算 (GPGPU) 是一个非常有吸引力的概念,可以利用 GPU 的强大功能进行任何类型的计算。
我很想将 GPGPU 用于图像处理、粒子和快速几何运算。
目前,该领域的两个竞争者似乎是 CUDA 和 OpenCL。我想知道:
- OpenCL 是否可以在 Windows/Mac 上通过 Java 使用?
- 与 OpenCL/CUDA 接口的库方法有哪些?
- 是否可以直接使用 JNA?
- 我是不是忘记了什么?
感谢任何现实世界的经验/例子/战争故事。
【问题讨论】:
-
考虑到我在 cuda 编程中使用了多少指针,我想用 Java 编程 GPU 会很困难。我不知道在设备编程中使用 Java 是否有很多好处,因为您不太可能实现将 Java 与 C++ 区分开来的完整 Java 功能/库
-
我看过一些令人印象深刻的 Java 演示,它们使用了 GLSL 和可能的 CUDA,所以这当然是可能的。
-
你检查过 jcuda.org 和 jocl.org 了吗?
-
我知道他们,但我无法判断质量。你有他们的经验吗?
-
@Nils: 所以这就是为什么他想把所有的数字都推到 GPU 上......无论如何,即使是普通的 C 或 x86 asm 也很难与海量数据并行处理器竞争,比如GPU。