HPC(主要基于 Java)

发布于 2024-09-01 06:41:43 字数 284 浏览 9 评论 0原文

除了使用目标机器拥有的多个内核之外,我正在寻找某种方法来使用 GPU 的数字处理能力(也许使用 Java?)。我将致力于(目前)实施 A* 算法,但将来我希望用某种遗传算法取代它。我看过 Project Fortress 但当我在 JavaFX 中构建 GUI 时,我我不想离 JVM 太远。

当然,如果没有可行的解决方案,我将迁移到最容易实现的解决方案。

I'm looking for some way of using the number-crunching ability of a GPU (with Java perhaps?) in addition to using the multiple cores that the target machine has. I will be working on implementing (at present) the A* Algorithm but in the future I hope to replace it with a Genetic Algorithm of sorts. I've looked at Project Fortress but as I'm building my GUI in JavaFX, I'd prefer not to stray too far from a JVM.

Of course, should no feasible solution be available, I will migrate to the easiest solution to implement.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

梦醒时光 2024-09-08 06:41:43

如果您对使用 GPU 的 HPC 感兴趣,那么也许您可以查看 jCuda。这为 CUDA 提供了 Java 绑定,以及对 CUDA FFT、CUDA BLAS 和 CUDA DPP 的访问。我还没有看到关于这个库的任何性能报告,所以我不能保证它会非常好。

除此之外,我不太确定。如果您有兴趣将此类内容作为教育练习,那么 Java 应该足够好,但如果您对 HPC 有严重需求,那么您可能会想要用 C 实现并使用 Java 本机接口来实现与它沟通。

If you're interested in HPC with GPUs then perhaps you can look jCuda. This provides Java bindings for CUDA, along with access to CUDA FFT, CUDA BLAS and CUDA DPP. I haven't seen any performance reports on this library so I can't guarantee it will be very good.

Beyond that, I'm not really sure. If you're interested in doing this type of stuff as an educational exercise then Java should be good enough, but if you have a serious need for HPC then you're probably going to want to implement in C and use the Java Native Interface to communicate with it.

﹎☆浅夏丿初晴 2024-09-08 06:41:43

莫滕·诺贝尔·乔尔根森有一个 博客文章 展示如何使用 JOGL - OpenGL 的 Java 绑定

但是,如果您想要通用计算而不是图形,那么您将需要 OpenCL,您可以从中选择 JOCL,或 < a href="http://jogamp.org/jocl/www/" rel="nofollow noreferrer">JOCL 或 JavaCL

维基百科页面展示了如何使用 OpenCL 来计算快速傅立叶变换。

Morten Nobel Joergensen has a blog post showing how to create a Mandelbrot Set using JOGL - Java Bindings for OpenGL

However if you want generic computing, rather than graphics, then you'd be after the Java bindings for OpenCL, from which you can chose from JOCL, or JOCL or JavaCL.

Wikipedia's page shows how OpenCL can be used to compute a fast fourier transform.

风蛊 2024-09-08 06:41:43

Parallel Colt 可能会引起您的兴趣。

Parallel Colt might be of interest.

沉溺在你眼里的海 2024-09-08 06:41:43

看看JPPF,它是一个非常好的、成熟的开源Java网格计算环境

Have a look at JPPF, it is a very nice and mature open source Java grid computing environment

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文