Типизация данных в PHP, надо ли оно? Прирост скорости JIT
Разбор бенчмарков на PHP 8.4 показал: типизация влияет не только на удобство разработки, но и на скорость выполнения кода — причём заметно.
🚀 Коротко о тесте
MacBook Pro 2018, PHP 8.4.6
10 млн итераций на каждую функцию
5 режимов: без OPcache/JIT, только OPcache, JIT (1205/1235/1255)
📌 Основные выводы
1) Без OPcache и JIT
Типы дают прирост скорости на простых операциях — интерпретатор делает меньше лишних проверок.
2) С OPcache
OPcache кеширует байткод, но не оптимизирует типы, поэтому в некоторых случаях типизированные функции даже медленнее — проверки всё ещё остаются.
3) С JIT
JIT раскрыл эффект максимально:
🔸 типизацию ускоряет в разы;
🔸 нетипизированный код также работает быстрее благодаря спекулятивным оптимизациям;
🔸 tracing-режим (1255) даёт самые стабильные результаты.
🧩 Итог
Типизация в PHP — это не просто подсказки в IDE.
Это реальная оптимизация, которая:
🔹 ускоряет выполнение кода,
🔹 делает его предсказуемее,
🔹 улучшает качество разработки.
Даже без JIT типы дают устойчивый позитивный эффект — а с JIT превращаются в полноценный инструмент производительности.
🔗 Хабр
🔹 Практический интенсив «Архитектуры и шаблоны проектирования»
🔹 Получить консультацию менеджера
🔹 Сайт Академии 🔹 Сайт Proglib
🐸 Библиотека пхпшника
Post #6109
2.26K

- 👍 9
- 🤔 4