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
[Impeller] Optimize the calculation of interpolant value of linear gradient #40085
Conversation
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.
It would be great to have malioc traces of this.
I suspect we didn't get any malioc traces because there was no change in the statistics? |
Sorry, there are no malioc traces of this. This PR is purely from the level of code optimization. |
auto label is removed for flutter/engine, pr: 40085, due to - The status or check suite Linux Fuchsia FEMU has failed. Please fix the issues identified (or deflake) before re-applying this label. |
We run malioc automatically on CI, so the fact that there was no test failure indicates that both this shader and the original compile to roughly the same code, at least for GLSL shaders |
Ahh, I see. I ran malioc locally, and the result after the change is indeed the same as before. I guess it might be that the |
@ColdPaleLight I think in this case, it could just be that the compiler applied the same optimizations you did. But this is again the ARM Mali Compiler and different compilers are different. We just use I'm glad you are considering shader quality and we could certainly use all the help we can get. This work will come in handy especially on Android. A quick introduction to reading malioc traces is here. An instance of measurable performance optimizations based on malioc traces is here. If you know of other ways of measurably improving shader quality, let's chat! We wired up malioc just as one way of giving us some guidance so there is less guesswork. There may be other better ways as well. |
@chinmaygarde Thanks for your information! |
Optimized the calculation method of
t
to avoidsqrt
caused by calling the functionlength
.Pre-launch Checklist
///
).