-
Notifications
You must be signed in to change notification settings - Fork 6k
[Impeller] migrate gaussian to half precision on Metal #40788
Conversation
|
"this doubles the frame throughput" Dang |
| if (any(lessThan(coords, f16vec2(0.0hf))) || | ||
| any(greaterThanEqual(coords, f16vec2(1.0hf)))) { | ||
| return f16vec4(0.0hf); | ||
| } |
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.
Not clamp?
Why are we truncating to zero always here?
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.
this is how decal works...
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.
Ahh I missed that
|
auto label is removed for flutter/engine, pr: 40788, due to - The status or check suite Linux Unopt has failed. Please fix the issues identified (or deflake) before re-applying this label. |
|
oops, this is faster beacuse I broke it LOL |
|
|
||
| for (float i = -blur_info.blur_radius; i <= blur_info.blur_radius; i++) { | ||
| float gaussian = IPGaussian(i, blur_info.blur_sigma); | ||
| for (float i = blur_info.blur_radius; i <= blur_info.blur_radius; i++) { |
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.
My b, I forgot the - 😆
|
This is still a regression and I need to investigate |
A redo of #40752.
This only migrates the shader and the interpolants and not gaussian.glsl to half precision. Locally this doubles the frame throughput on the ios backdropfilter benchmark.
Local engine before:
After