szha commented on issue #18936:
URL:
https://github.com/apache/incubator-mxnet/issues/18936#issuecomment-678062954
So here's the problem:
```
% DMLC_LOG_STACK_TRACE_DEPTH=150 MXNET_ENGINE_TYPE=NaiveEngine lldb
python3.7 -- test_18936.py
(lldb) target create "python3.7"
Current executable set to 'python3.7' (x86_64).
(lldb) settings set -- target.run-args "test_18936.py"
(lldb) run
Process 27100 launched: '/usr/local/bin/python3.7' (x86_64)
Process 27100 stopped
* thread #2, stop reason = exec
frame #0: 0x0000000100006000 dyld`_dyld_start
dyld`_dyld_start:
-> 0x100006000 <+0>: popq %rdi
0x100006001 <+1>: pushq $0x0
0x100006003 <+3>: movq %rsp, %rbp
0x100006006 <+6>: andq $-0x10, %rsp
(lldb) cont
Process 27100 resuming
[23:14:55] ../src/engine/engine.cc:55: MXNet start using engine: NaiveEngine
[23:14:55] ../src/storage/storage.cc:198: Using Pooled (Naive)
StorageManager for CPU
Process 27100 stopped
* thread #2, queue = 'com.apple.main-thread', stop reason = EXC_ARITHMETIC
(code=EXC_I386_DIV, subcode=0x0)
frame #0: 0x0000000116f5b318 libmxnet.dylib`void
mxnet::op::mxnet_op::Kernel<mxnet::op::LaunchExWrapper<mxnet::op::PDF_Dirichlet<false>
>, mshadow::cpu>::LaunchEx<int, int, float*, float*,
float*>(mshadow::Stream<mshadow::cpu>*, unsigned long, int, int, float*,
float*, float*) at pdf_op.h:443
440 index_t i = start;
441
442 // Get aligned
-> 443 const index_t align_step = sample_size - (i % sample_size);
444 const index_t first_stride = length > align_step ?
align_step : length;
445 OP::Map(i, first_stride, sample_size, args...);
446 i += first_stride;
```
https://github.com/apache/incubator-mxnet/blob/9bdd4d6347c284770ee5bfe5ae98f1dabc283829/src/operator/random/pdf_op.h#L443
The code needs to guard against zero-size array, and we should add a smoke
test to guard against such problem in this op, similar to
https://github.com/apache/incubator-mxnet/pull/18972/files
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]