My DSP algorithm was running smoothly on rdk 2.8.
After migrating to rdk 3.2, it becomes unstable. After running for a random period of time, it outputs:
[m3vpss ] Stream ID 1: Input queue empty condition.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
My DSP algorithm was running smoothly on rdk 2.8.
After migrating to rdk 3.2, it becomes unstable. After running for a random period of time, it outputs:
Hi,
Can you measure execution time of the function. It may be too high.
You better allocate memory from cached memory, Tiller region is not cached on DSP. You can enable caching by setting MAR bits in FC_RMAN_IRES_c6xdsp.cfg.
You can also increase local DSP data memory (DSP_DATA_SIZE in config_512M.bld) and then use static allocation, or dynamic allocate memory from default local heap 0 :
void *pBuf1 = ( void *) Memory_alloc(0, numBytes, 128, &eb);
Instead of function call use inline code, or use restrict keyword for function parameters, to enable better compiler optimisation.
Regards.
Hi, Marko
Thanks a lot for the reply and great suggestion. What I don't understand is the change from 2.8 to 3.2, on RDK 2.8 when my DSP algorithm was even slower, it didn't cause this issue at all.
I will try out your suggestion and update here.
Thanks