~/talk

Demystifying (JavaScript) engines

Talkat JSConf Iceland 2016 · 2016-08-25..08-26· [javascript, web-performance]
slides:none on file

Explains a concrete engine pipeline: parser → bytecode interpreter → baseline JIT → optimizing JIT, with named implementations and thresholds (SpiderMonkey: baseline then Ion/ionmonkey; V8: Ignition then TurboFan; JavaScriptCore: baseline at 100/6 then DFG at 1000/66 then FTL at 10,000; ChakraCore parallelizes compilation). Shows inline caches making deep prototype chains as fast as shallow ones, describes generational and incremental garbage collectors, reports that optimistic JITs close much of the gap versus C but benchmarks depend on workload and microbenchmarks mislead.

AI-written summary · about

  1. 0:00Start
  2. 2:11The History of Javascript Engines
  3. 3:32An Execution Phase
  4. 4:41Adaptive Optimization
  5. 5:25Optimistic Optimizations
  6. 7:26Spidermonkey
  7. 11:45Optimizations
  8. 12:26Functioning Language
  9. 14:15Strategies To Implement Garbage Collecting Systems
  10. 16:14How Do You Measure the Overall Performance of any of those Javascript Engines
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.