Static Optimization of PHP Bytecode

Nikita Popov (12.May.2017 at 14:30, 1 hr )
Talk at phpDay 2017 (English - UK)

Rating: 5 of 5

The PHP compiler turns PHP code into "opcodes", which are then executed on the Zend Virtual Machine. To improve performance, it is possible to optimize these opcodes prior to execution. PHP 7.1 introduces a sophisticated opcode optimization infrastructure, which uses static single assignment (SSA) form and type inference to enable more advanced optimizations. This talk introduces the new optimization infrastructure, the optimizations based on it, and discusses which parts of the PHP language are particularly hostile to this form of optimization. This is an advanced talk, but I will try to present the topic in a way that does not require a strong compiler construction background.

Who are you?

Claim talk

Talk claims have been moved to the new Joind.in site.

Please login to the new site to claim your talk

Want to comment on this talk? Log in or create a new account or comment anonymously

Write a comment

 
Please note: you are not logged in and will be posting anonymously!
= one plus eight

Comments

Rating: 5 of 5

12.May.2017 at 15:05 by Alessandro Lai (68 comments) via joind.in Android app

The speaker was able to convey in a very concise and simple way a very complex topic. Knowing this kind of stuff is useful to understand the inner workings of the PHP engine.

Rating: 5 of 5

12.May.2017 at 16:04 by Michele Carino (5 comments) via Web2 LIVE

I enjoy phpday when people that are REALLY influencing the tools we use are invited to talk.

The greteast value of this talk were the human insights about the challenges behind php performance improvements.

Rating: 5 of 5

12.May.2017 at 17:16 by Frederick Vanbrabant (16 comments) via Web2 LIVE

Loved the talk, matched greatly with the talk James gave.
Love how even a "failed" project can be used to teach stuff.

Rating: 4 of 5

13.May.2017 at 02:21 by Miro Svrtan (96 comments) via Web2 LIVE

I really love 'look at what we have done' talks (even when they have failed) with the great explanation of the details.

Topic was really advanced and totally over-my-head so it was bit hard to follow at moments but speaker really did a great job.

Some nervousness was visible at the beginning but :+1: for taking the stage at such a young age Nikita!

Rating: 5 of 5

13.May.2017 at 16:06 by Giorgio Sironi (71 comments) via Web2 LIVE

Went to a great length to show the effort going on in optimizing PHP 7, despite the clash with its fundamentally dynamic nature. A clear and realistic approach to improving compilers/interpreters.

Rating: 5 of 5

14.May.2017 at 11:18 by Evaldo Junior Bento (12 comments) via Web2 LIVE

Just wow. Internals are hard.

Rating: 5 of 5

14.May.2017 at 13:10 by Richard Fussenegger (5 comments) via Web2 LIVE

Very good talk that I was looking forward to, and I wasn't disappointed. Nikic was able to break down a very complex topic to a level that pretty much everyone is able to understand. The pace was to slow for my taste, but I am certain that it was perfect for the majority, and allowed everyone to follow easily.

© Joind.in 2017