--
You received this message because you are subscribed to the Google Groups "binary-size" group.
To unsubscribe from this group and stop receiving emails from it, send an email to binary-size...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/binary-size/CAFWCB1kLKUdA6-F4kU-ruPLuRA-Zg9tZnMCQorZwTivBCdPD-g%40mail.gmail.com.
I don't think hand-selecting params to cache will age well, so I think #3 is not meaningfully different from the status quo.I don't have a good feel on whether #2 is easy to do or how much it would save, but it seems like a nice idea if it still gets you the wins we're hoping for.Ultimately, I think those CC'ed would have a better idea of what's best than the binary size team.
On Thu, Aug 8, 2024 at 9:25 PM Takashi Toyoshima <toyo...@chromium.org> wrote:Hi, binary-size members!--I'm now working on a CL that introduces macros to provide a function local static cache for base::FeatureParam<T>.In my POC, https://chromium-review.googlesource.com/c/chromium/src/+/5557049/63, it shows 1-5ms speed up on each speedometer3 benchmark, but results in 14.5 KiB APK size increase.Is this acceptable, or should we consider applying the cache only for effective cases to minimize the binary size impact?Currently, I think 3 choices;1) enforce the cache to all use cases; 14.5KiB increase2) apply the cache only to commonly effective cases, i.e. just exclude std::string cases3) apply the cache manually to minimum cases1) is most beneficial from the viewpoint of performance, but it would be a balance between the gain vs binary size. I want to decide the best choice in this mail list.Here is a design doc for the plan; https://docs.google.com/document/d/1-7dNJD9w0yRNO_0Z0ZIJSLv2k0CZs1sNHnC7CWbJPr8/edit?usp=sharingThanks.--Takashi Toyoshima
Software Engineer, Google
You received this message because you are subscribed to the Google Groups "binary-size" group.
To unsubscribe from this group and stop receiving emails from it, send an email to binary-size...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/binary-size/CAFWCB1kLKUdA6-F4kU-ruPLuRA-Zg9tZnMCQorZwTivBCdPD-g%40mail.gmail.com.
On Fri, Aug 9, 2024 at 10:46 AM Andrew Grieve <agr...@chromium.org> wrote:I don't think hand-selecting params to cache will age well, so I think #3 is not meaningfully different from the status quo.I don't have a good feel on whether #2 is easy to do or how much it would save, but it seems like a nice idea if it still gets you the wins we're hoping for.Ultimately, I think those CC'ed would have a better idea of what's best than the binary size team.OK, so let me also invite sky@ to the explicit CC list.He drives the performance efforts and will know well how to interpret the benchmark result.
Hi, sorry for a blank period, but now I'm back from a vacation.
> Scott,The last patchset already excluded some params. So, I ran the benchmark set with multiple configurations for comparison.This applies the cache to most params in Blink, but except for enum casesAPK Size: +19.1KiBM1 mac: 1.04ms improvement in total (20 cases), 0.046 point score upAndroid: 18.11ms improvement in total (20 cases), 0.021 point score upSo, the M1 mac gain of the running time is much smaller than the Android case as you said.But it seems the score has increased more on mac (though I'm not sure why, and how the score is calculated).Also, our team's OKR focuses also on Android. Actually we use a mid-range Android phone as a reference.So, for my team, this is still a big win, and I want to seek a common ground to land it.