@Override public String onnxName() { throw new NoOpNameFoundException("No onnx op opName found for " + opName()); }
@Override protected float hasum(int N, INDArray X, int incX) { ASum asum = new ASum(X); Nd4j.getExecutioner().exec(asum, Integer.MAX_VALUE); float ret = asum.getFinalResult().floatValue(); return ret; }
@Override protected float hasum(long N, INDArray X, int incX) { ASum asum = new ASum(X); Nd4j.getExecutioner().exec(asum, Integer.MAX_VALUE); float ret = asum.getFinalResult().floatValue(); return ret; }
@Override protected double dasum(int N, INDArray X, int incX) { ASum asum = new ASum(X); Nd4j.getExecutioner().exec(asum, Integer.MAX_VALUE); double ret = asum.getFinalResult().doubleValue(); return ret; /*CudaContext ctx = allocator.getFlowController().prepareAction(null, X); double ret; CublasPointer xCPointer = new CublasPointer(X, ctx); cublasHandle_t handle = ctx.getHandle(); synchronized (handle) { cublasSetStream_v2(new cublasContext(handle), new CUstream_st(ctx.getOldStream())); DoublePointer resultPointer = new DoublePointer(0.0); cublasDasum_v2(new cublasContext(handle), N, xCPointer.getDevicePointer(), incX, resultPointer); ret = resultPointer.get(); } allocator.registerAction(ctx, null, X); return ret; */ }
@Override public String tensorflowName() { throw new NoOpNameFoundException("No tensorflow op opName found for " + opName()); }
@Override protected double dasum(long N, INDArray X, int incX) { ASum asum = new ASum(X); Nd4j.getExecutioner().exec(asum, Integer.MAX_VALUE); double ret = asum.getFinalResult().doubleValue(); return ret; /*CudaContext ctx = allocator.getFlowController().prepareAction(null, X); double ret; CublasPointer xCPointer = new CublasPointer(X, ctx); cublasHandle_t handle = ctx.getHandle(); synchronized (handle) { cublasSetStream_v2(new cublasContext(handle), new CUstream_st(ctx.getOldStream())); DoublePointer resultPointer = new DoublePointer(0.0); cublasDasum_v2(new cublasContext(handle), N, xCPointer.getDevicePointer(), incX, resultPointer); ret = resultPointer.get(); } allocator.registerAction(ctx, null, X); return ret; */ }
@Override protected float sasum(long N, INDArray X, int incX) { ASum asum = new ASum(X); Nd4j.getExecutioner().exec(asum, Integer.MAX_VALUE); float ret = asum.getFinalResult().floatValue();
@Override protected float sasum(int N, INDArray X, int incX) { ASum asum = new ASum(X); Nd4j.getExecutioner().exec(asum, Integer.MAX_VALUE); float ret = asum.getFinalResult().floatValue();