Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想使用 GPU 编程来提高 JAVA 程序的性能。在互联网上进行了一些研究后,我发现如果我使用 jcuda 或 jocl 是可能的,但问题是在这两种情况下内核代码都必须用 C 编写。并且我希望每个线程执行的算法用 C 语言编写非常复杂(它会进行一些计算以了解两架飞机之间是否会发生事故),因此需要面向对象的语言。
有解决办法吗?还是我们必须将整个项目翻译成 C++?
谢谢你的帮助 !
简单的规则:如果它需要面向对象,它就会失去它的性能。即使您使用的是 GPU 加速。
我建议您确定程序代码的并行部分。您不必将所有算法传输到 GPU 设备。是否有并行化的任何方面,例如填充的数组或网格?
你的模拟消息交换是什么类型的?它是显式的,即围绕内核发送消息,还是通过同步隐式发送。
您至少应该向我们提供有关您的算法及其数据布局的更多信息。