关于使用deeplearning4j的nvidia cuda编译器,是否有任何解决方法?

时间:2019-11-03 05:18:29

标签: nvidia deeplearning4j dl4j computation-graph

将我的工具包从8.0更新为10.0,但是在尝试初始化计算图时使用cuda 10.0时出现以下错误。

ND4J CUDA build version: 10.0.130
CUDA device 0: [GeForce 940MX]; cc: [5.0]; Total memory: [4294967296];
o.n.n.NativeOpsHolder - Number of threads used for OpenMP: 32
o.n.n.Nd4jBlas - Number of threads used for OpenMP BLAS: 0
o.n.l.a.o.e.DefaultOpExecutioner - Backend used: [CUDA]; OS: [Windows 10]
o.n.l.a.o.e.DefaultOpExecutioner - Cores: [4]; Memory: [12.0GB];
o.n.l.a.o.e.DefaultOpExecutioner - Blas vendor: [CUBLAS]
o.n.l.j.o.e.CudaExecutioner - Device Name: [GeForce 940MX]; CC: [5.0]; Total/free memory: [4294967296]
Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:67)
Caused by: java.lang.RuntimeException: cudaGetSymbolAddress(...) failed; Error code: [13]
    at org.nd4j.linalg.jcublas.ops.executioner.CudaExecutioner.createShapeInfo(CudaExecutioner.java:2557)
    at org.nd4j.linalg.api.shape.Shape.createShapeInformation(Shape.java:3282)
    at org.nd4j.linalg.api.ndarray.BaseShapeInfoProvider.createShapeInformation(BaseShapeInfoProvider.java:76)
    at org.nd4j.jita.constant.ProtectedCudaShapeInfoProvider.createShapeInformation(ProtectedCudaShapeInfoProvider.java:96)
    at org.nd4j.jita.constant.ProtectedCudaShapeInfoProvider.createShapeInformation(ProtectedCudaShapeInfoProvider.java:77)
    at org.nd4j.linalg.jcublas.CachedShapeInfoProvider.createShapeInformation(CachedShapeInfoProvider.java:44)
    at org.nd4j.linalg.api.ndarray.BaseNDArray.<init>(BaseNDArray.java:205)
    at org.nd4j.linalg.api.ndarray.BaseNDArray.<init>(BaseNDArray.java:200)
    at org.nd4j.linalg.jcublas.JCublasNDArray.<init>(JCublasNDArray.java:375)
    at org.nd4j.linalg.jcublas.JCublasNDArrayFactory.create(JCublasNDArrayFactory.java:1576)
    at org.nd4j.linalg.factory.Nd4j.create(Nd4j.java:4064)
    at org.nd4j.linalg.factory.Nd4j.createArrayFromShapeBuffer(Nd4j.java:2500)
    at org.nd4j.linalg.factory.Nd4j.read(Nd4j.java:2552)
    at org.deeplearning4j.util.ModelSerializer.restoreComputationGraph(ModelSerializer.java:585)
    at org.deeplearning4j.util.ModelSerializer.restoreComputationGraph(ModelSerializer.java:498)
    at org.deeplearning4j.zoo.ZooModel.initPretrained(ZooModel.java:101)
    at org.deeplearning4j.zoo.ZooModel.initPretrained(ZooModel.java:54)
    at org.deeplearning4j.examples.convolution.objectdetection.HouseNumberDetection.main(HouseNumberDetection.java:161)
    ... 5 more

关于此问题,是否有任何解决方法,因为我的抄送版本是5,所以了解了它

  

以前使用cuda工具包8.0和nd4j-cuda-8.0作为我的后端,一切工作正常。

1 个答案:

答案 0 :(得分:2)

不幸的是,发生了一些错误,并且cc 5.0支持没有添加到最新版本中。星期一左右将有快照,并且应该有cc 5.0支持。