What is the benefit of the "Execution Efficiency" code generation objective?

1 view (last 30 days)
I am running some PIL tests on code generated for a number of models, with each tested against multiple optimizations and optimization priorities using 2013b for code generation and CCS3.3 with a TMS320F28335 spectrum digital ezDSP. The benchmarks that are available to me are limited to average clock cycles consumed per sample, flash size, and stack consumption.
While use of the ROM efficiency optimization setting shows consistent reduction in my code's ROM size, using Execution efficiency has actually resulted in significantly (and consistently, as a magnitude increase rather than a percentage) higher required clock cycle consumption to execute the same model. Why is this?
Documentation on the actual goals of the optimization objectives are very limited:
Execution efficiency — Configure code generation settings to achieve fast execution time.
If possible, restrict the fixed-point data type word lengths in your model so that they are equal to or less than the integer size of your target microcontroller. This results in fewer mathematical instructions in the microcontroller, and reduces ROM and execution time.
Although it seems like Execution Efficiency should result in reduced operations which would in turn reduce clock cycle consumption, my testing results when using the code generation adviser with Execution Efficiency as my only optimization goal were the opposite.
Any ideas as to why this is happening?

Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!