On 3/13/16 4:06 PM, Brian Barnes wrote:
The second part was a hint to tell the engine to always take the most 
aggressive route with optimization

By which I assume you mean still running in the lower interpreter/JIT levels until you have gathered sufficient profiling information, but not gating the higher JIT levels on hotness per se?

I think one problem here is that right now hotness is used as a proxy for profiling information in at least some JITs; once code is hot enough you figure you've got enough information about its types. Not a perfect assumption, of course.

A longer start-up time is something you want for a thing that will run 
continually and will almost always be guaranteed to fall into the compile path 
eventually.

Again, the fastest compile path relies on having run on the slower ones for a bit to gather the information needed to produce the fast code.

For example, you can run SpiderMonkey in --ion-eager mode, in which it immediately tries to compile with the last-level JIT. This produces slower code than you get if you run in the first-level JIT for a bit first...

Having explicit types would help with this, of course.

-Boris
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to