当前位置: 首页 > 知识库问答 >
问题:

在CUDA上运行JVM

石正奇
2023-03-14

但是,我已经看到使用Java访问CUDAapi

  • 是否有任何实现可以在GPU中运行整个JVM(可能使用CUDA API)?
  • 或者,会有这样做的计划吗?
  • 如果是,性能是否足以同时运行客户端或服务器应用程序?
  • 最重要的是,会导致JVM无法在GPU中运行的问题是什么?

我在这里看到的好处是,我可以买一个像样的NVidia GPU,并能够运行Java应用程序,而不需要在CPU上进行太多的处理,从而节省CPU用于其他用途。

然而,如果这是不可能的,那么有没有任何方法可以强制JVM将处理卸载到具有CUDA的GPU,而不需要重新编译Java应用程序来支持CUDA呢?我的意思是添加VM参数

共有1个答案

秦才良
2023-03-14

您所面临的主要问题是,CUDA被设计成要做很多很多次简单的事情。例如。它通常在每个核心上运行一个方法。不能让不同的内核运行不同的代码。这并不意味着某些代码不能优化以在CUDA处理器上运行。例如向量操作,但在GPU上运行整个JVM并不是设计它的目的。

顺便说一句:CUDA处理器不支持IO,而大多数服务器都在IO上花费了很大一部分时间。例如读/写磁盘和网络。

 类似资料:
  • 问题内容: 我正在做一个用Java完成的业务项目,需要巨大的计算能力来计算业务市场。简单的数学运算,但包含大量数据。 我们订购了一些cuda gpu进行尝试,并且由于cuda不支持Java,我想知道从哪里开始。我应该建立一个JNI接口吗?我应该使用JCUDA还是其他方法? 我没有这方面的经验,我想如果有人可以指导我一些事情,以便我可以开始研究和学习。 问题答案: 首先,你应该意识到CUDA不会自动

  • 我正在尝试使用GPU而不是CPU运行dl4j模型。该模型使用CPU运行良好。所以我决定尝试CUDA来利用我的GPU。我遵循了这里描述的每个步骤,对于CUDA安装,我按照NVIDIA的说明从这里安装CUDA工具包。代码编译正常,但出现错误: 我的项目是使用IntelliJ上的Maven创建的。所有的依赖项都是可以的,否则代码将无法编译。必须缺少某些后端依赖项、库或安装。可能是版本不兼容的问题 消息为

  • 问题:当我运行以下命令时 错误: 详情: 警告:tensorflow:From:1:U gpu是否可用(来自tensorflow.python.framework.test\u util)已被弃用,并将在将来的版本中删除。更新说明:改用。2021-04-18 21:02:51.839069:I tensorflow/core/platform/cpu_feature_guard.cc:143]您的

  • 问题内容: 我正在尝试使用websocket调整我的应用程序以使其在GAE上运行,但是在阅读文档时,我没有找到解决此问题的漂亮方法。 使用一个像这样的非常简单的应用程序:https : //github.com/marcosbergamo/gae-nodejs- websocket 这是我尝试使用的示例演示。但是,当我尝试连接到我的websocket时会收到此错误; 跟随有关请求的图像; 问题答案

  • 问题内容: 借助Android 4.4 KitKat,Google将linux内核升级到3.8版,这是Docker所需的内核版本。 我不知道AUFS部分,但是有没有办法通过此更新在android上运行docker容器? 问题答案: 根据文档,Android内核缺少LXC所需的很多内核功能。 也许将来使用Docker 1.x,可能会编写一个使用Android功能而非LXC的插件。但就目前而言,您需要