~/talk

Static Optimization of PHP Bytecode

Talkat phpDay 2017 · 2017-05-12..05-13· [php]
slides:none on file

PHP 7.1 adds an SSA-based optimization infrastructure and type inference that enables specialization of opcodes and some constant-folding; the implementation lands SSA, type analysis and simple specialization in the Zend VM but inlining and whole-program constant propagation are withheld. Microbenchmarks show up to ~1.5× speedups, but real apps like WordPress and MediaWiki see ~1–3% gains; a new JIT (ASM backend) gives roughly ~5% on WordPress. Dynamic features—eval, references, error handlers, includes/destructors—make many optimizations unsafe.

AI-written summary · about

  1. 0:00Start
  2. 4:22Classes of Optimizations
  3. 6:04Generic Add Instruction
  4. 8:32Classical Compiler Optimizations
  5. 9:02Code Elimination
  6. 10:24Constant Propagation
  7. 15:50Behind the Type Inference
  8. 19:17Range Inference
  9. 27:40Error Handler
  10. 34:15Results
  11. 35:17Average Improvement
~/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.