running nn causes device to crash/reboot

Hey, I’ve been trying to run a nn on the M7 and having really strange results - the network will load correctly, and doing a dry run will correctly show all the layers, but when I actually run it it will run once (and give me values) but as soon as I try to run it again, even as a dry run, the M7 will reboot. I suspect some sort of memory corruption is happening. Here is the output of the dry run for the network, any ideas? It’s not running out of memory, everything fits comfortably on the heap.

forward: arm_convolve_HWC_q7_basic(input_data, 30, 1, conv_wt, 12, 5, 0, 1, conv_bias, 0, 7, buffer1, 26, col_buffer, 0);
forward: arm_relu_q7(buffer1, 261612);
forward: arm_convolve_HWC_q7_fast(buffer1, 26, 12, conv_wt, 16, 3, 0, 1, conv_bias, 0, 10, buffer2, 24, col_buffer, 0);
forward: arm_relu_q7(buffer2, 241416);
forward: arm_convolve_HWC_q7_fast(buffer2, 24, 16, conv_wt, 16, 3, 0, 1, conv_bias, 0, 8, buffer1, 22, col_buffer, 0);
forward: arm_relu_q7(buffer1, 221216);
forward: arm_maxpool_q7_HWC(buffer1, 22, 16, 2, 0, 2, 6, col_buffer, buffer2);
forward: arm_convolve_HWC_q7_basic(buffer2, 11, 16, conv_wt, 24, 4, 0, 1, conv_bias, 0, 6, buffer1, 8, col_buffer, 0);
forward: arm_relu_q7(buffer1, 8324);
forward: arm_convolve_HWC_q7_fast(buffer1, 8, 24, conv_wt, 32, 3, 0, 1, conv_bias, 0, 9, buffer2, 6, col_buffer, 0);
forward: arm_relu_q7(buffer2, 6132);
forward: arm_fully_connected_q7_opt(buffer2, ip_wt, 192, 32, 0, 6, ip_bias, buffer1, col_buffer);
forward: arm_relu_q7(buffer1, 1132);
forward: arm_fully_connected_q7_opt(buffer1, ip_wt, 32, 32, 0, 6, ip_bias, buffer2, col_buffer);
forward: arm_relu_q7(buffer2, 1132);
forward: arm_fully_connected_q7_opt(buffer2, ip_wt, 32, 10, 0, 7, ip_bias, output_data, col_buffer);

I’m, activity working on stuff like this now training a net for arm techcon. Um, can you post the net or email it to us so we can debug? Ibrahim may be able to help out.

Just emailed one of the nets that has this behavior to you and Ibrahim. Thanks!