Is there any work around about nvidia cuda compiler with deeplearning4j?

206 views Asked by At

updated my toolkit from 8.0 to 10.0 but with cuda 10.0 upon trying to initialise a computation graph I get the following error.

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

is there any work around about this, learnt its because my cc version is 5

previously with cuda toolkit 8.0 and nd4j-cuda-8.0 as my backend everything worked out fine.

1

There are 1 answers

0
raver119 On BEST ANSWER

Unfortunately some mistakes were made, and cc 5.0 support wasn't added to the latest release. There will be snapshots up around monday, and cc 5.0 support should be there.