[ 
https://issues.apache.org/jira/browse/SYSTEMML-948?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15511338#comment-15511338
 ] 

Matthias Boehm commented on SYSTEMML-948:
-----------------------------------------

no the sparse block has not changed - just the decision on sparse/dense during 
conversion. However, wrt to SYSTEMML-946, I could image that there is somewhere 
a missing examSparsity call (to bring blocks back into dense representation). 
Anyway, this issue right here just looks as if the intermediate has 0 non-zeros 
and hence it is in sparse representation without an allocated sparseblock - 
probably the conv operations do not yet handle empty blocks yet; 
[~niketanpansare] do you wanna take a first shot on it? 

> Convolution Null Pointer Exception
> ----------------------------------
>
>                 Key: SYSTEMML-948
>                 URL: https://issues.apache.org/jira/browse/SYSTEMML-948
>             Project: SystemML
>          Issue Type: Bug
>            Reporter: Mike Dusenberry
>
> Recently, the backwards convolution function over filters is throwing null 
> pointer exceptions **randomly**.  The line in question is {{Iterator<IJV> 
> iter = elem.sparseBlock.getIterator()}}.  [~mboehm7] Could this be related to 
> the sparse block update?  cc [~niketanpansare]
> {code}
> org.apache.sysml.api.mlcontext.MLContextException: Exception when executing 
> script
>       at org.apache.sysml.api.mlcontext.MLContext.execute(MLContext.java:293)
>       at org.apache.sysml.api.mlcontext.MLContext.execute(MLContext.java:263)
>       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 py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:231)
>       at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:381)
>       at py4j.Gateway.invoke(Gateway.java:259)
>       at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:133)
>       at py4j.commands.CallCommand.execute(CallCommand.java:79)
>       at py4j.GatewayConnection.run(GatewayConnection.java:209)
>       at java.lang.Thread.run(Thread.java:745)
> Caused by: org.apache.sysml.api.mlcontext.MLContextException: Exception 
> occurred while executing runtime program
>       at 
> org.apache.sysml.api.mlcontext.ScriptExecutor.executeRuntimeProgram(ScriptExecutor.java:376)
>       at 
> org.apache.sysml.api.mlcontext.ScriptExecutor.execute(ScriptExecutor.java:319)
>       at org.apache.sysml.api.mlcontext.MLContext.execute(MLContext.java:285)
>       ... 12 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: 
> org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in while 
> program block generated from while statement block between lines 24 and 52 -- 
> Error evaluating while program block
>       at 
> org.apache.sysml.runtime.controlprogram.Program.execute(Program.java:152)
>       at 
> org.apache.sysml.api.mlcontext.ScriptExecutor.executeRuntimeProgram(ScriptExecutor.java:374)
>       ... 14 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error 
> in while program block generated from while statement block between lines 24 
> and 52 -- Error evaluating while program block
>       at 
> org.apache.sysml.runtime.controlprogram.WhileProgramBlock.execute(WhileProgramBlock.java:181)
>       at 
> org.apache.sysml.runtime.controlprogram.Program.execute(Program.java:145)
>       ... 15 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error 
> in program block generated from statement block between lines 39 and 39 -- 
> Error evaluating instruction: 
> CP°extfunct°./mnist_lenet.dml°train°14°8°X·MATRIX·DOUBLE°Y·MATRIX·DOUBLE°X_val·MATRIX·DOUBLE°Y_val·MATRIX·DOUBLE°C·SCALAR·DOUBLE·false°Hin·SCALAR·DOUBLE·false°Win·SCALAR·DOUBLE·false°lr·SCALAR·DOUBLE·false°mu·SCALAR·DOUBLE·false°decay·SCALAR·DOUBLE·false°lambda·SCALAR·DOUBLE·false°50·SCALAR·INT·true°1·SCALAR·INT·true°iters·SCALAR·DOUBLE·false°W1°b1°W2°b2°W3°b3°W4°b4
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:335)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeInstructions(ProgramBlock.java:224)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.execute(ProgramBlock.java:168)
>       at 
> org.apache.sysml.runtime.controlprogram.WhileProgramBlock.execute(WhileProgramBlock.java:169)
>       ... 16 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: error executing 
> function ./mnist_lenet.dml::train
>       at 
> org.apache.sysml.runtime.instructions.cp.FunctionCallCPInstruction.processInstruction(FunctionCallCPInstruction.java:184)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:305)
>       ... 19 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error 
> in function program block generated from function statement block between 
> lines 36 and 196 -- Error evaluating function program block
>       at 
> org.apache.sysml.runtime.controlprogram.FunctionProgramBlock.execute(FunctionProgramBlock.java:121)
>       at 
> org.apache.sysml.runtime.instructions.cp.FunctionCallCPInstruction.processInstruction(FunctionCallCPInstruction.java:177)
>       ... 20 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error 
> in for program block generated from for statement block between lines 105 and 
> 195 -- Error evaluating for program block
>       at 
> org.apache.sysml.runtime.controlprogram.ForProgramBlock.execute(ForProgramBlock.java:162)
>       at 
> org.apache.sysml.runtime.controlprogram.FunctionProgramBlock.execute(FunctionProgramBlock.java:114)
>       ... 21 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error 
> in for program block generated from for statement block between lines 106 and 
> 190 -- Error evaluating for program block
>       at 
> org.apache.sysml.runtime.controlprogram.ForProgramBlock.execute(ForProgramBlock.java:162)
>       at 
> org.apache.sysml.runtime.controlprogram.ForProgramBlock.execute(ForProgramBlock.java:150)
>       ... 22 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error 
> in program block generated from statement block between lines 127 and 167 -- 
> Error evaluating instruction: 
> CP°conv2d_backward_filter°outp1·MATRIX·DOUBLE°_mVar22132·MATRIX·DOUBLE°1·SCALAR·INT·true°1·SCALAR·INT·true°1·SCALAR·INT·true°1·SCALAR·INT·true°_Var22077·SCALAR·INT·false°32·SCALAR·INT·true°128·SCALAR·INT·true°128·SCALAR·INT·true°_Var22078·SCALAR·INT·false°32·SCALAR·INT·true°3·SCALAR·INT·true°3·SCALAR·INT·true°_mVar22137·MATRIX·DOUBLE°48
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:335)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeInstructions(ProgramBlock.java:224)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.execute(ProgramBlock.java:168)
>       at 
> org.apache.sysml.runtime.controlprogram.ForProgramBlock.execute(ForProgramBlock.java:150)
>       ... 23 more
> Caused by: org.apache.sysml.runtime.DMLRuntimeException: Error while 
> executing multi-threaded LoopedIm2ColConv2dBwdFilter
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.runParallelConvTask(LibMatrixDNN.java:878)
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.runConvTask(LibMatrixDNN.java:838)
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.conv2d_backward_filter(LibMatrixDNN.java:318)
>       at 
> org.apache.sysml.runtime.instructions.cp.ConvolutionCPInstruction.processInstruction(ConvolutionCPInstruction.java:209)
>       at 
> org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:305)
>       ... 26 more
> Caused by: java.util.concurrent.ExecutionException: 
> java.lang.NullPointerException
>       at java.util.concurrent.FutureTask.report(FutureTask.java:122)
>       at java.util.concurrent.FutureTask.get(FutureTask.java:192)
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.runParallelConvTask(LibMatrixDNN.java:869)
>       ... 30 more
> Caused by: java.lang.NullPointerException
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.elementWiseInPlaceTransposedAddition(LibMatrixDNN.java:363)
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.doLoopedIm2ColConv2dBwdFilter(LibMatrixDNN.java:415)
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN.access$300(LibMatrixDNN.java:41)
>       at 
> org.apache.sysml.runtime.matrix.data.LibMatrixDNN$ConvTask.call(LibMatrixDNN.java:926)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>       ... 1 more
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to