Pull to refresh

Comments 10

Как я понимаю, активный тайпхинтинг в стрикт режиме должен значительно повысить качество и/или частоту компиляции — пара простых проверок входа-выхода без всяких попыток приведения, после которых у нас типы железно известны (про union типы из той же 8 забудем).


Про ввод-вывод и тайминги не очень понял. Вот было, например, 300 мс у запроса, из них 50 мс php и 250 sql. Пускай jit уменьшил до 25мс php, стало 275. Типа немного, согласен. Но это на одном запросе. Но это нам позволит снизить потребление процессора в 2 раза. На каждый запрос будет приходиться в 2 раза меньше процесорного времени. Это большинству приложений неважно?

UFO landed and left these words here
> Это большинству приложений неважно?

Да! Большинство приложений даже на 30% не загрузят самый вялый дроплет за $5 на DigitalOcean. Но «если вдруг», то пололок очень высок, к тому же слой серверного кода обычно легко масштабируется, в отличие от слоя БД например… Так что да… 50мc или 25мc разницы нет обычно (кто кстати сказал что оно даст 2x прирост?)

Спасибо за статью.
А есть ли в JIT оптимизация по используемой памяти?

Понимаем JIT в PHP 8
Understanding something — типичный заголовок обучающей статьи на английском языке. Не стоит переводить его дословно, потому что на русском это звучит очень неестественно. Лучше придумать новый заголовок для статьи исходя из её содержимого. Например, «Разбираемся с JIT в PHP 8».
Не имеет значения, скомпилированы ли операции обработки, если вам все равно придется обращаться к диску или сети. Тайминги будут очень похожи.

…а потом окажется, что это даст +100500 к скорости работы доктрины, например, которая гоняет и хранит данные через тонну (плохо) типизированных (хорошо) прокладок внутри себя.

Важно понимать, что jit php не будет похож на jit java.
Насколько понял, от усложнения решили отказаться, чтобы хоть что-то вообще работало.
У java jit довольно сложный, много аналитики, много оптимизаций. И хотя конечный результат не дотягивает до результата монструозных компиляторов для C++, но всё же достаточно хорош.
У php jit будет намного проще, без сложной аналитики и оптимизаторов. Профилирование будет примитивным, и ускорение получит малая часть кода, причем не слишком большое, т.к. никаких сложных оптимизаций нет.
Но и это лучше, чем ничего. На каких-то кейсах даст пусть не особо большой, но профит.


Но даже без всего этого php сейчас работает достаточно быстро, подбираясь к java и C++.

И хотя конечный результат не дотягивает до результата монструозных компиляторов для C++, но всё же достаточно хорош.
Но даже без всего этого php сейчас работает достаточно быстро, подбираясь к java и C++.

[citation needed]

Java JIT вроде тоже не сразу строился.

Поверхностно, но действительно понятно чего ждать и почему так. Спасибо за перевод.
Only those users with full accounts are able to leave comments. Log in, please.