{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Блоги: заметки с тегом php7",
    "_rss_description": "Автоматически собираемая лента заметок, написанных в блогах на Эгее",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": false,
    "_itunes_explicit": "no",
    "home_page_url": "https:\/\/blogengine.me\/blogs\/tags\/php7\/",
    "feed_url": "https:\/\/blogengine.me\/blogs\/tags\/php7\/json\/",
    "icon": false,
    "authors": [
        {
            "name": "Илья Бирман",
            "url": "https:\/\/blogengine.me\/blogs\/",
            "avatar": false
        }
    ],
    "items": [
        {
            "id": "124864",
            "url": "https:\/\/bolknote.ru\/all\/php-74-vs-php-80a\/",
            "title": "PHP 7.4 vs. PHP 8.0a",
            "content_html": "<p class=\"remark\">Резюме — в моём частном случае стало ощутимо быстрее, PHP 7.4 работал 63,9 секунд, 8.0a — 42,6.<\/p>\n<p>Как многие знают, основной фишкой восьмой версии интерпретатора ПХП <a href=\"https:\/\/bolknote.ru\/all\/about-php8\/\">будет <i>JIT<\/i><\/a>. Обещают ускорение вычислительных задач, что немного не про веб, где в основном используется этот язык, но всё равно выглядит интересно.<\/p>\n<p>В официальном репозитории альфа восьмой версии лежит уже давно, стало интересно сравнить её с «семёркой» — много ли даёт <i>JIT<\/i> приросту. Для подобных тестов я <a href=\"https:\/\/bolknote.ru\/all\/4261\/\">давно использую<\/a> свой оптимизирующий транслятор «Брейнфака», с загруженной в него задачей вычисления числа Пи.<\/p>\n<p>Восьмой ПХП собрался на моём «Макбуке» следующей последовательностью команд:<\/p>\n<pre class=\"e2-text-code\"><code class=\"bash\">PATH=\/usr\/local\/Cellar\/bison\/3.5.3\/bin\/:$PATH .\/buildconf\n.\/configure --prefix=\/opt\/php-bin\/ --without-iconv --disable-xml \\\n--without-libxml --disable-simplexml --disable-xmlwriter --disable-dom --disable-xmlreader\nmake -j4\nmake install<\/code><\/pre><p>Версию 7.4 ставил через «брю», сборочную конфигурацию оставил как есть, ничего не менял.<\/p>\n<p>После небольшой коррекции <tt>php.ini<\/tt> в информации об интерпретаторе появились <i>OPcache<\/i> и <i>JIT<\/i>:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/bolknote.ru\/pictures\/2020.03.18@2x.jpg\" width=\"1000\" height=\"392\" alt=\"\" \/>\n<div class=\"e2-text-caption\">Скомпилированная версия PHP 8.0a со включенным JIT<\/div>\n<\/div>\n<p>Вообще свой брейфаковский транслятор когда-то давно я умудрился сломать, но с быстрым фиксом он выплюнул некую калечную программу, которая, тем не менее, выдала результат, похожий на правду и довольно бодро нагрузила одно ядро процессора.<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"https:\/\/bolknote.ru\/pictures\/2020.03.18.2@2x.jpg\" width=\"1000\" height=\"546\" alt=\"\" \/>\n<div class=\"e2-text-caption\">Сравнение PHP 7.4 и 8.0a, со включённым и выключенным opcache (меньше — лучше)<\/div>\n<\/div>\n<p>Каждую версию интерпретатора я тестировал со включенным и выключенным <i>OPcache<\/i> десять раз, а результаты усреднил. Как видите, <i>JIT<\/i> существенно ускорил выполнение программы в моём случае (там огромное количество циклов и ветвлений) — 63,9 секунды против 42,6.<\/p>\n<p>Что интересно — <i>PHP 8.a<\/i> без <i>OPcache<\/i> обогнал версию 7.4 со включенным <i>opcache<\/i>, это примечательный результат— значит сам «голый» интерпретатор тоже оптимизируют.<\/p>\n",
            "date_published": "2020-03-19T01:56:58+05:00",
            "date_modified": "2023-12-12T13:29:25+05:00",
            "tags": [
                "bf",
                "brainfuck",
                "php7",
                "php8",
                "программирование"
            ],
            "author": {
                "name": "Евгений Степанищев",
                "url": "https:\/\/bolknote.ru\/",
                "avatar": "https:\/\/bolknote.ru\/pictures\/userpic\/userpic@2x.jpg?1760600028"
            },
            "_date_published_rfc2822": "Thu, 19 Mar 2020 01:56:58 +0500",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "124864",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": null,
                "og_images": []
            }
        },
        {
            "id": "124865",
            "url": "https:\/\/bolknote.ru\/all\/4261\/",
            "title": "Скорость PHP7 на интерпретаторе Brainfuck",
            "content_html": "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" class=\"e2-text-table\">\n<tr>\n<td><img width=\"660\" height=\"268.5\" src=\"\/\/bolknote.ru\/imgs\/2014.12.20.1.jpg\" alt=\"Производительность PHP7 (161.98КиБ)\" srcset=\"\/\/bolknote.ru\/imgs\/\/2014.12.20.1@2x.jpg 2x\"><\/td>\n<\/tr>\n<\/table>\n<p>У меня есть старинная забава — брать свой <a href=\"https:\/\/github.com\/bolknote\/brainfuck\">оптимизирующий интерпретатор языка «Брейнфак»<\/a> и запускать программу, вычисляющую число «Пи» под разными версиями ПХП, чтобы посмотреть их производительность. Тест довольно синтетический, но посмотреть всё равно интересно.<\/p>\n<p>Сравнил в данном случае версии 5.5.14  и сегодняшнюю сборку 7.0, разница всё равно заметна, хоть и не так впечатляюща, как в случае с «<a href=\"https:\/\/wiki.php.net\/phpng#performance_evaluation\">Вордпрессом<\/a>» — там разница в два раза.<\/p>\n<p>Время у меня на скриншоте общее — то есть трансляция программы на «Брейнфаке» в ПХП и запуск получившегося через <i>eval<\/i>.<\/p>\n",
            "date_published": "2014-12-20T22:19:00+05:00",
            "date_modified": "2023-12-12T13:29:31+05:00",
            "tags": [
                "bf",
                "brainfuck",
                "php",
                "php7",
                "программирование"
            ],
            "author": {
                "name": "Евгений Степанищев",
                "url": "https:\/\/bolknote.ru\/",
                "avatar": "https:\/\/bolknote.ru\/pictures\/userpic\/userpic@2x.jpg?1760600028"
            },
            "_date_published_rfc2822": "Sat, 20 Dec 2014 22:19:00 +0500",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "124865",
            "_rss_enclosures": [],
            "_e2_data": {
                "is_favourite": false,
                "links_required": null,
                "og_images": []
            }
        }
    ],
    "_e2_version": 4079,
    "_e2_ua_string": "Aegea 11.0 (v4079e)"
}