Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There are no performance profiling mechanisms on these small devices, and the timers are rather coarse.

But it is easily possible to estimate the execute time:

- mulacc of one weight takes 11 clock cycles.

- There are 1696 weights in the model, each one is only touched once.

- We can assume ~25%-50% overhead for loops and housekeeping (1:4 unrolled)

=> ~23000-28000 clock cycles per inference, which is less than 2ms at 16MHz

Since this is an MLP, the inference time directly scales with the number of weights. (This would be different for a CNN)

As per veryfing on PMC150C - I considered using an LED for valid/nonvalid output. But iterating with OTP devices is quite tedious when you do not have an emulator. Since both devices are code compatible, we can assume that the code works on the smaller devices, though.



If flipping one of the output pins is fast enough you could use that in combination with an oscilloscope as a coarse but very accurate profiling method.

Though I believe for most people "roughly 2ms" is good enough




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: