问题标签 [jcuda]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 初始化启动层java.lang.module.ResolutionException时出错:模块A包含包B,模块B将包B导出到A
我正在将我的应用程序从Java 1.8迁移到Java 11,在运行时我的一个外部 jar 上出现以下错误。
启动层初始化时出错 java.lang.module.ResolutionException: 模块 image.viewer 包含包 jcuda,模块 jcuda 将包 jcuda 导出到 image.viewer
这是我的Module.info课程
java - 如何使用 JCuda 在 CPU 和 GPU 上执行相同的功能
我处理 JCuda 文档中的代码。目前,它只是在 GPU 上添加向量。我应该怎么做才能重用add
CPU(主机)上的功能?我知道,我必须更改__global__
为,__host__ __device__
但我不知道如何在我的 main 函数中调用它。我怀疑我必须使用另一个 nvcc 选项。
我的目标是在 GPU 和 CPU 上运行相同的功能并检查执行时间(我知道如何检查它)。
.cu 文件(编译nvcc -ptx file.cu -o file.ptx
主要功能片段
java - Jcuda CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES(参数太多?)
当我调用函数 cuLaunchKernel() 时,我的程序因错误 CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES 而崩溃。这是因为我将 29 个参数传递给我的内核吗?如果是这样,是否有任何解决方法?我很确定我需要这些参数进行计算。
performance - 不能同时使用 cuMemcpyHtoDAsync 和 cuMemcpyDtoHAsync
我对以下代码片段有一个相当奇怪的观察。
当我两者都做时 - 将内存复制到设备并将结果复制回主机时,流似乎是同步的 - 即它们按顺序执行内核。一旦我将副本删除到主机并将参数复制到设备,流将并行执行,一旦我删除复制参数并继续复制结果,流也会并行执行。
任何想法为什么?以及如何解决问题?
history - 如何从Jcuda中的ptx文件恢复cu文件
错误地,我从 Jcuda 项目中删除了 cu 文件。还有ptx文件。如何从ptx文件恢复cu文件?在netbeans中选择的文件下,我选择历史然后恢复已删除的文件,我无法得到它,请帮助我。
java - jCuda / 稀疏矩阵转置和乘法
我正在寻找一个基本示例:稀疏矩阵与 jCuda的转置和/或乘法。
谢谢你的帮助!
问候
java - 为什么在 Cusolver 中每隔一个函数调用才计算特征向量?
我正在编写一个程序来比较 JBlas 和 JCublas 的速度。当我第一次调用以下函数时,一切正常,并且 v 包含正确的特征向量。当我第二次调用它时,计算时间要少得多,但只返回输入的对称矩阵a
,就好像d_A
的值从未改变一样。
该函数似乎只在奇数调用上按预期工作。我有一种预感,这个错误是由于 GPU 内存中的某些东西没有被正确清除,但我找不到它。
deeplearning4j - DL4j 1.0.0-M1.1 在 CUDA 上运行非常慢
从 DL4J 更新1.0.0-beta7
为DL4j 1.0.0-M1.1
. 貌似后端用了GPU,但是学习和思考的速度却变得异常的慢。
它似乎已经减慢了 10 倍以上。
CUDA 的 GPU 使用率约为 50%。CPU 使用率非常低。当我们开始学习时,GPU 的 CUDA 核心使用率一下子上升了,所以我们可以确定 GPU 正在被使用。
我不记得了,但我……我用过1.0.0 M1
。我认为当时的思维速度没有太大差异。这个版本有一个错误阻止我创建神经网络,所以我没有尝试学习它。
有没有其他人有同样的问题?
1.0.0 beta7 300/秒 1.0.0 M1.1 13.68/秒
规格
赢10 64位
GPU 内存 6GB CPU 内存 64GB
Args -Xmx32G -Dorg.bytedeco.javacpp.maxbytes=6G -Dorg.bytedeco.javacpp.maxphysicalbytes=32G
可能对解决问题有用的信息
这是我在思考时的 Windows 任务管理器1.0.0 beta7
。除了CUDA核心之外,GPU 0
左侧底部的使用量也有所增加。
但是在 的情况下1.0.0 M1.1
,CUDA 内核的使用量增加了,但使用率GPU 0
几乎为零。
java - JCuda 示例文件错误
我对 JAVA GPU 事物 (JCuda) 完全陌生,试图测试和了解 JCuda 的工作原理以及它是否对我的需求有用(JAVA 渲染器),所以我下载了 JCuda 示例并将它们加载到 NetBeans 8 中。但是当我尝试运行任何示例文件,比如说 JCudaDriverVolumeRendererJOGL.java,我在输出窗口中收到警告/错误,特别是针对上述类的这个(但我在大多数示例文件上都遇到了错误,只有没有创建 GUI 的示例正在工作,例如 JCudaRuntimeMemoryBandwidths):
我在正确的路径中有所有必需的文件,您可以在下面的项目打印屏幕上看到:
任何人都可以向我解释这里出了什么问题(我没有在任何地方添加我的任何代码,只是示例 zip 文件中的原始文件)?
编辑
在这个具体的例子中,看起来问题是缺少“nvcc”(不管是什么),所以我在搜索那个“nvcc”,我发现它是CUDA Toolkit 10(Win7 x64 的最新版本)的一部分- 我的情况)需要下载(1.7GB)并安装在本地机器上,我现在是东东,所以一旦我完成并测试后我会更新这篇文章。但是为什么在JCuda的例子中没有提到这件事很奇怪,似乎必须自己找出困难的方法。
更新
安装该 CUDA Toolkit 后,之前的错误消失了,但弹出了新的错误:
nvcc fatal : Cannot find compiler 'cl.exe' in PATH
喜欢,。严肃地说:我们是否还需要安装 MS VisualStudio(几个无用的千兆字节,当我们只需要相对较小的 cl.exe 时)才能使用 JCuda for JAVA?!因为看起来 cl.exe 是该 MS 软件的一部分,并且没有其他方法可以获取它......好吧,除非我弄错了。
更新 2
我最终下载并安装了MSVC 2010 Express for Desktop Windows,这是第一个 - 最旧的,实际上很难找到(= 最小的安装文件大小,大约 500MB + 附带的最少不需要的垃圾,请记住:我只需要 cl.exe)-具有集成的 x64 文件支持(因为我正在使用 x64 NetBeans 在 Win7 x64 机器上编译。我还必须手动将路径添加cl.exe
到系统环境变量 PATH 中(否则尽管它仍然找不到安装它后,人们会期望安装程序自己自动设置该 sys 变量,对吗?) + 在 MSVC 安装目录的 VC\bin 和一个简单的 bat 文件中手动创建名为 amd64 的新目录,否则它会结束这次在另一个错误中抱怨Microsoft Visual Studio configuration file 'vcvars64.bat' could not be found for installation at 'C:/Program Files (x86)/Microsoft Visual Studio 11.0/VC/bin/
(根据这篇文章的第一个答案)但我仍然收到另一批编译错误(!!!),现在它找不到其他文件,具体来说crtdefs.h
,我不知道,但我正在慢慢放弃任何其他尝试......我真的很想知道:现在这个世界上有没有人可以真正成功地运行JCuda的那些示例文件?!难以置信的...