On Mon, Oct 4, 2021 at 10:04 AM 'Andreas Haas' via blink-dev < blink-dev@chromium.org> wrote:
> Contact emailsah...@chromium.org > > ExplainerAt the moment, V8 compiles WebAssembly modules by first > compiling all functions with the baseline compiler Liftoff, and then > immediately compiling all functions with the optimizing compiler TurboFan, > see https://v8.dev/docs/wasm-compilation-pipeline. On some websites we > see that TurboFan compilation can block JavaScript workers from execution. > With WebAssembly dynamic tiering we want to reduce the CPU time of TurboFan > compilation by only optimizing functions which were already executed a few > times. > > SpecificationThis feature is just a new implementation of an already > implemented specification. > > Summary > > With WebAssembly Dynamic Tiering, an heuristic decides which functions of > a WebAssembly module get optimized, and when the optimization is triggered. > This is an improvement to the existing eager optimization approach, where > all functions get optimized immediately after baseline compilation is > finished. WebAssembly Dynamic Tiering reduces the resource consumption of > the optimizing compiler, and prevents the compiler from competing with the > web application for resources. > > > Blink componentBlink>JavaScript>WebAssembly > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EJavaScript%3EWebAssembly> > > TAG reviewNot applicable > > TAG review statusNot applicable > > Risks > WebAssembly dynamic tiering may lead to unexpected performance > regressions. > > Interoperability and Compatibility > > > > Gecko: No signal > > WebKit: No signal > > Web developers: No signals > My understanding is that this doesn't create any web-facing change in behavior, but only a potential change in performance? In that case, then signals and TAG review and etc. all seem quite reasonable to skip. :) > > > Goals for experimentation > > The goal of the experiment is to allow important partners to experiment > with the performance impact of WebAssembly dynamic tiering. This feature > may change the startup behavior of WebAssembly code significantly, which is > why we would like to experiment in the guarded environment of an origin > trial first. > > Reason this experiment is being extended > > > > Ongoing technical constraints > > > > Debuggability > > Debugging behavior does not change > > Will this feature be supported on all six Blink platforms (Windows, Mac, > Linux, Chrome OS, Android, and Android WebView)?Yes > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> > ?Yes > > Flag nameWebAssemblyDynamicTiering > > Requires code in //chrome?False > > Estimated milestones > > No milestones specified > Can you specify milestones? :) How many releases do you need in order to evaluate the impact? -mike > Link to entry on the Chrome Platform Status > https://chromestatus.com/feature/5685307493056512 > > This intent message was generated by Chrome Platform Status > <https://www.chromestatus.com/>. > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to blink-dev+unsubscr...@chromium.org. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAELSTveTudJkMbuBMyZ%2BZTv334audVik78gEJTzmjym4X6wJTg%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAELSTveTudJkMbuBMyZ%2BZTv334audVik78gEJTzmjym4X6wJTg%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscr...@chromium.org. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAKXHy%3DdbZ4JCJFgBi6-2g5ZviPNh0ukxV4Mf%3DiVaaMe%3D_9yqZA%40mail.gmail.com.