Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


PHP 7.4.0 officially released
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

PHP 7.4.0 officially released

eva2000eva2000 Veteran
edited November 2019 in General

PHP 7.4.0 has been officially released now https://www.php.net/archive/2019.php#2019-11-28-1.

I did some PHP benchmarks for 7.4 vs 7.3 vs 7.2 vs 7.1 vs 7.0 with & without Profile Guided Optimizations on my Centmin Mod LEMP stack https://community.centminmod.com/threads/18741/.

Enjoy ^_^

«1

Comments

  • @eva2000 said:
    PHP 7.4.0 has been officially released now https://www.php.net/archive/2019.php#2019-11-28-1.

    I did some PHP benchmarks for 7.4 vs 7.3 vs 7.2 vs 7.1 vs 7.0 with & without Profile Guided Optimizations on my Centmin Mod LEMP stack https://community.centminmod.com/threads/18741/.

    Enjoy ^_^

    thanks @eva2000

  • NeoonNeoon Community Contributor, Veteran

    Premium, lets upgrade from 7.3 to 7.4.

  • Meanwhile, PHP 7.1 gets EOL'd this month

  • @klikli said:
    Meanwhile, PHP 7.1 gets EOL'd this month

    Correction, you mean @eol 'd

    Thanked by 2MichaelCee Edmond
  • MikeAMikeA Member, Patron Provider

    Thanks for always posting those benchmarks with newer releases.

  • Interesting, thanks @eva2000!

  • so overall, every version is improving...

  • opcache preload is here!

  • Love your work as always @eva2000

  • So there's still visible speed-up. I wonder whether there are any known major incompatibilities with previous 7.*.

  • @Master_Bo said:
    So there's still visible speed-up. I wonder whether there are any known major incompatibilities with previous 7.*.

    I'm wondering this too

  • @Master_Bo said:
    So there's still visible speed-up. I wonder whether there are any known major incompatibilities with previous 7.*.

    Как всегда по принципу "эксперимент -> пиздец -> чтение документации" ;)

  • I havent noticed any (yet) going from 7.3 to 7.4

  • @corbpie said:
    I havent noticed any (yet) going from 7.3 to 7.4

    Well, unlike .net platform, php devs care about backward compatibility.

  • Which host now offers PHP 7.4 selektor?

  • 7 years of php experience. I am looking for a remote job.

  • CConnerCConner Member, Host Rep

    Now we only need method overloading, being able to assign a non primitive default value to class variables and generic types

  • Master_BoMaster_Bo Member
    edited November 2019

    @tsoft said:
    Как всегда по принципу "эксперимент -> [] -> чтение документации" ;)

    It depends. I read release notes every time, but still something breaks in more or less big apps.

  • So that's why some of my vps changed to 7.4 yesterday

  • SteveMCSteveMC Member
    edited November 2019

    seenu said: so overall, every version is improving...

    The next step will be PHP 8 which will be featuring JIT. Yet to see if it improves performances significantly on "everyday-web-app".

    Master_Bo said: I wonder whether there are any known major incompatibilities with previous 7.*

    https://www.php.net/manual/en/migration74.deprecated.php

  • NeoonNeoon Community Contributor, Veteran

    @Master_Bo said:

    @tsoft said:
    Как всегда по принципу "эксперимент -> [] -> чтение документации" ;)

    It depends. I read release notes every time, but still something breaks in more or less big apps.

    Depends, if you have a shitload of dependencies, frameworks, libs.... even different version of these libs.
    You never know, where the shit will implode.

    Sometimes it even takes them years to upgrade.
    But if you run on vanilla, no issues.

  • @SteveMC said:

    Master_Bo said: I wonder whether there are any known major incompatibilities with previous 7.*

    https://www.php.net/manual/en/migration74.deprecated.php

    In real life, when something more complex than "Hello world" is in use, there might be changes outside of such lists - enough to break compatibility.

    So let's that check...

  • thanks @eva2000, PHP developer and all community for this great news...

    my LEMPer has already supports for PHP 7.4

  • bjobjo Member
    edited November 2019

    And the first thing broke after upgrade :( :

    [pool cloud] failed to chown() the socket '/run/php-fpm/cloud-php-fpm.sock': Operation not permitted

  • Glad you folks like. Also added PHP 8.0 dev benchmarks along with PHP 8 JIT for previewing what 2021 has to bring for PHP https://community.centminmod.com/posts/79730/ :)

  • PHP 8.0 looks like its killing it with performance improvements based on your benchmarks

  • How do you build PHP with PGO?

    Some times ago, I've been experimenting, but I am not sure if I am doing it right.

    After the ./configure (+options) I do:

    make prof-gen
    make install

    Let it run for a bit, then

    make prof-clean
    make prof-use
    make install

    Is that the right procedure?

  • eva2000eva2000 Veteran
    edited December 2019

    @theblackesthat said:
    PHP 8.0 looks like its killing it with performance improvements based on your benchmarks

    yup - PHP 8 will be to PHP 7 is to PHP 5.6 I suspect for PHP 8 JIT capable workloads :)

    SteveMC said: How do you build PHP with PGO?

    see https://software.intel.com/en-us/blogs/2015/10/09/pgo-let-it-go-php

    This uses a technique called Profile-Guided Optimization or PGO. The basic idea is as follows: When any program is compiled, the compiler uses some heuristics to determine the most likely path your program will take through the code, and optimizes the code using those assumptions.

    PGO lets you train the compiler to produce a more optimized result. It does this by first compiling the code with instrumentation, then run the instrumented code which creates a profile. The final step is to recompile the program, using the profile to fine-tune the optimizations.

    Amongst open source projects, very few use PGO. I know that Firefox builds by default with PGO, but I'm not sure of any others. We are introducing this with PHP and Python because it shows a measurable difference in complex customer workloads.

    where PHP PGO training is done just before make prof-clean and make prof-use steps

    For Centmin Mod 123.09beta01 and newer, users just have to enable PHP_PGO='y' in persistent config file /etc/centminmod/custom_config.inc prior to running centmin.sh menu opton 5 PHP upgrade/recompile shell based menu to automatically build any PHP 7+ version with Profile Guided Optimizations and automatic training. And to further advance PHP PGO training for specific PHP scripts, Centmin Mod allows you to set specific paths via variables like PHPPGO_INDEXPATH to PHP files to be trained by Centmin Mod PHP PGO routines https://community.centminmod.com/threads/update-inc-php_upgrade-inc-add-phppgo_indexpath-variable-support-in-123-09beta01.8972/

    Thanked by 1SteveMC
  • Thank you @eva2000 , so it seems this is what I am doing. However, I thought that, during the training process, data would be written into files located in the source tree. But I see nothing. I'll try to dig it more.

  • Can we use centmin on Debian/Ubuntu?

Sign In or Register to comment.