-
Notifications
You must be signed in to change notification settings - Fork 323
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
audio: xtensa: add Kconfig for inline functions #8033
Conversation
37a433a
to
a29a4ae
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! Any size / performance comparison data yet?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please check #5212 , I pasted data for the compare.
a29a4ae
to
d56e804
Compare
interesting... So mixout performance improves by 10.5% with inlining, mixin by 3.5%, whereas gain becomes 3.4% slower (is 0x60000 vs. 0x60001 - playback vs. capture?) While size increased by about 0.2%. Looks like a clear win to me! :-) |
d56e804
to
7f38f25
Compare
@btian1 re-running CI, not expecting a logic error here but could be timing. |
SOFCI TEST |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent data on the impact. I have some comments on the naming and documentation, see inline.
ok, looks good now. |
7f38f25
to
91539ca
Compare
SOFCI TEST |
Can you share the tests with us? How did you measured the impact of the patch at runtime. We would like to check this on imx. Also, what toolchain have you used? GCC or XCC. Zephyr or XTOS? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Few more nits still, the descsription could be even more accurate/concrete and I'd like the Kconfig definition to be done only once in the tree.
91539ca
to
7780e4a
Compare
this config will be used to add or remove -fno-inline-functions into compiler build option. Signed-off-by: Baofeng Tian <[email protected]>
remove this build option for sof build cavs2.5 and ace platform with enable COMPILER_INLINE_FUNCTION_OPTION. Signed-off-by: Baofeng Tian <[email protected]>
By enable/disable COMPILER_INLINE_FUNCTION_OPTION to control add or remove -fno-inline-functions build option for sof zephyr code. Signed-off-by: Baofeng Tian <[email protected]>
after enable inline build option, CI build is reporting not initialize this structure, init it to remove the error. Signed-off-by: Baofeng Tian <[email protected]>
please add -o app/perf_overlay.conf into fw build, then you will get trace logs with component cycle performance. |
SOFCI TEST |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @btian1, looks good now! Great to have this long-open issue closed.
Enable inline function for cavs 2.5 and above platform, this is a follow up with issue:#5212