4 ms·
Baseline interpreter is a good example of doing things that help most Web pages instead of benchmarks. One of the major things that ARES-6 and other benchmarks
by pcwalton 7y ago
Baseline interpreter is a good example of doing things that help most Web pages instead of benchmarks. One of the major things that ARES-6 and other benchmarks test is whether generators are JIT'd, for example. This doesn't really help Web pages, as it's a rarely used feature at present and even rarer in hot loops.
SpiderMonkey should get around to jitting generators, but I have a hard time blaming the team for focusing on real-world improvements first.
- The_rationalist 7y agoPcwalton! While I agree that most synthetic benchmarcks are mostly not representative for the real world, there is a benchmarck suite for real world. That is benchmarcking most used ALEXA websites. It's named TP 5 and TP6, mozilla use it internally (e. G to measure progress on stylo) Why is the real world (TP5/6) not public?? Phoronix has never used it, mozilla has never publicly published benchmarcks. I guess they favor chromium but I've never seen all results only the few mozillians posted on bugzilla. Let the world know, publish the results, even if it favor chromium. Anyway the mainstream will never be affected by that public information (most people have difficulties discerning a search engine from the concept of browser, let alone talking about benchmarcks)
- fabrice_d 7y agoDid you look at the raptor dashboards? Let me help you: https://treeherder.mozilla.org/perf.html#/graphs?timerange=2592000&series=mozilla-central,1647786,1,1 https://treeherder.mozilla.org/perf.html#/graphs?timerange=2...
- The_rationalist 7y agoThank you! But without being able to compare it with chromium the results are meaningless to my brain.
- pcwalton 7y agoYou're free to port it to Chromium and run it yourself.
- yusukesuzuki 7y agoJSC's async-await is constructed on the generator's mechanism so that high performance generator is critical for all the web code using async functions. Not sure how SpiderMonkey is doing.
- littlestymaar 7y agoAs the gp said, async/await is rarely used in hot loops, so it would probably never get jit-ed in a real webpage.
- yusukesuzuki 7y agoI don’t agree given that async iterator can be iterated. But I’m ok if SpiderMonkey folks thinks so ;)
- littlestymaar 7y agoAsync is mainly useful for asynchronous operations, like network requests if file system access. If used in this context, the loop cannot be "hot"… Maybe there are people (ab)using the async stuf do do something else, but at least it's not really common.
- pcwalton 7y agoI'm sure SM will get around to jitting that stuff at some point. All I'm saying is that Baseline Interpreter gives users bigger wins right now.