DL4J尝试使用cpu而不是cuda

时间:2018-12-05 01:27:34

标签: java deeplearning4j nd4j

我一直在使用移动gpu在笔记本电脑上运行DL4J项目。它运行正常,检测到gpu并训练了我的模型。但是,切换到具有独立图形的桌面后,同一程序将尝试使用cpu! 两台机器都运行ubuntu 18.04,并安装了cuda 9.0。

程序启动时,我从笔记本电脑获得以下输出:

  

信息:已加载[JCublasBackend]后端Dec 05,2018 3:26:33 AM   org.nd4j.nativeblas.NativeOpsHolder信息:线程数   用于NativeOps:32 Dec 05,2018 3:26:33 AM   org.nd4j.nativeblas.Nd4jBlas信息:用于的线程数   BLAS:2018年12月5日0上午3:26:33   org.nd4j.linalg.api.ops.executioner.DefaultOpExecutioner   printEnvironmentInformation信息:使用的后端:[CUDA];作业系统:[Linux]   2018年12月5日3:26:33 AM   org.nd4j.linalg.api.ops.executioner.DefaultOpExecutioner   printEnvironmentInformation INFO:核心:[8];记忆体:[3.4GB]; 12月5日,   2018 3:26:33 AM   org.nd4j.linalg.api.ops.executioner.DefaultOpExecutioner   printEnvironmentInformation INFO:Blas供应商:[CUBLAS] 2018年12月5日   上午3:26:33 org.nd4j.linalg.jcublas.ops.executioner.CudaExecutioner   printEnvironmentInformation INFO:设备名称:[GeForce GTX 960M]; CC:   [5.0];总/可用内存:[4242604032]

这是在桌面上

  

03:29:44.843 [main] INFO org.nd4j.linalg.factory.Nd4jBackend-已加载   [CpuBackend]后端

由于我的依赖项包括nd4j-cuda-9.0-platform而不是nd4j-native-platform,因此崩溃立即发生。

我很确定cuda可以在桌面上运行,我已经在上面运行了tensorflow-gpu程序。

我使用gradle,这是我的build.gradle的依赖项部分:

compile group: 'org.deeplearning4j', name: 'deeplearning4j-core', version: '1.0.0-beta'
compile group: 'org.nd4j', name: 'nd4j-cuda-9.0-platform', version: '1.0.0-beta'
compile group: 'org.datavec', name: 'datavec-api', version: '1.0.0-beta'
compile group: 'org.deeplearning4j', name: 'rl4j-core', version: '1.0.0-beta'
compile group: 'org.deeplearning4j', name: 'rl4j-api', version: '1.0.0-beta'
compile group: 'org.deeplearning4j', name: 'deeplearning4j-cuda-9.0', version: '1.0.0-beta'
compile group: 'org.deeplearning4j', name: 'deeplearning4j-ui_2.10', version: '1.0.0-beta'

我在这里可能会缺少一些基本知识。任何帮助将不胜感激。

0 个答案:

没有答案