Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

V8 and SpiderMonkey use JIT compilation, not interpretation


V8 and SpiderMonkey extensively interpret, before functions are marked hot and traced, and every time they are deoptimized from failed guards.


That only influences start up time.


No, it affects warm-up, which is not the same. JS is only JIT'ed if the interpreter decides that it has been running code enough for it to make sense, and then not even permanently.

Some things will never JIT. Some things will JIT much later, leading to sudden CPU spikes later. And importantly, code will often deoptimize a few times, meaning that it drops back to interpreted to re-trace even if it had already optimized this code block.

And as most web "applications" are loaded only to be thrown away as you finished reading fixed text, all of those resources were burnt for nothing. This includes an application like the eShop, which has limited need for JS for anything other than lightweight asset handling.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: