Hi
I have an algorithm that I designed in Simulink and for which I generated code using Real Time Workshop Embedded Coder. The algorithm performs 64,000 multiplications and adds per second.
I'm trying to run the code generated by Real Time Workshop Embedded Coder on an OMAP L137 evaluation module. The problem that I'm having is that the CPU load graph is telling me that this algorithm consumes 10% of the CPU and this seems exceedingly large to me. My OMAP device is clocked with an external 24MHz crystal and I setup the PLL to give me a x30 gain. So my C6747 CPU should be internally clocked at 720MHz. My code is probably not most efficient so I'm probably not doing more than 1 multiplication per clock cycle, but still I would expect that an algorithm running 64,000 multiplications and add per second should approximately only consume 64,000 / 720,000,000 << 1% of the CPU time.
Is my understanding correct? In other words, should I be expecting better performance than 10% CPU from the OMAP L137, or am I misunderstanding something about the part and 10% CPU is what it takes to compute 68,000 multiplications and add per second?
I should also mention that I'm using the BSP BIOS to schedule everything, I did not configure the PLL PREDIV and POSTDIVE values as I assumed that they default to /1, and my multiplications are all floating point. I’m also running everything (data & code) from the internal L2 RAM.
Thank you immensely for your help!
Sincerely,
Jean