On Mon, Oct 4, 2021 at 5:39 PM Mike West <mk...@chromium.org> wrote: > 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? > > We would like to do the experiment from M96 until M102. We would like to improve the heuristics for when to optimize over time, which requires the longer time span.
> -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/CAELSTvdatM%2BeAEz_Wcoq2XD1q4PF3Pq5OoVynFonhWKkic-vEg%40mail.gmail.com.