有了rootbeer框架,Java 的 GPU 编程成为可能。
哪些 Java 代码应该用于 rootbeer,哪些代码应该更好地在 Java VM 中运行?
或者其他:哪个代码产生更多开销并且没有意义?
除了其他答案:rootbeer jet 不支持翻译一些 Java 功能。
您应该避免使用这些功能的代码。
Rootbeer 的更新正在生产中,以提供垃圾收集和其他缺少的 Java 功能。
为了通过 GPU 获得加速,您希望每个数据元素进行大量计算,因为数据传输非常慢。您通常希望在 GPU 上运行 2 或 3 个嵌套 for 循环,至少有 1000 个线程。
当前 GPU 的限制之一是它可以将一个简单的方法加载到每个内核并立即执行。通用 CPU 可以加载更多代码和数据并独立完成。
有矢量样式的代码在 GPU 上可能会更快,我有一天会看到它是一种选择,但大多数代码(如果不是按处理能力,按体积计算)将在 CPU 上。