PHP 5.4 效能比起 PHP 5.3.x 有長足的進步

一年多前有個 C++ vs. Python vs. Perl vs. PHP performance benchmark 測試,當時 PHP 5.3.5 實在是被打的慘不忍睹。

測試程式的內容是找出 10000000 (一千萬) 以內的質數,然後重複執行十次。以不同語言實作,再執行各個比較時間。

我最近在自己的 Mac 上面編譯了 PHP 5.4 ,再跑一次這個測試,結果有比較滿意了 (但比起其他語言,還是輸!)

先跑 C++ (4.2.1) 試試看,結果很滿意,整個運算不到四秒就完成了

接著再跑 Java (OpenJDK 1.7.0-u4-b228) 試試看,雖然比 C++ 慢,但也很快了!

再跑 python (2.7.1) 試試看

然後是 Perl (5.12.3) ,跑出來比 Python 慢一些。

最後是 php (5.3.6) ,大幅落後其他語言

最後是 PHP (5.4) ,速度有進步了,進入了一分鐘俱樂部,但還是不優。

另外 PHP 5.4.0 和 PHP 5.3.6 跑這隻程式,兩邊記憶體用量平均都在 800 MB 左右 (以 memory_get_usage(true) 來看),實在有點驚人。

Posted in PHP
3 comments on “PHP 5.4 效能比起 PHP 5.3.x 有長足的進步
  1. sotom says:

    C++ 好威啊 0.0
    不知道有沒有佔記體的分佈

  2. 蘇介吾 says:

    請教為何一直出現以下錯誤訊息?

     

    == PHP ==

    real 0m0.385s
    user 0m0.243s
    sys 0m0.141s

    Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 71 bytes) in /www/CodeIgniter/i56/maintain/langs-performance/primes-php.txt on line 8
    Unexpected loops count: 2

    不管 php.ini 設定為 memory_limit = 128M 或 256M 都不行 >”<

     

     

1 Pings/Trackbacks for "PHP 5.4 效能比起 PHP 5.3.x 有長足的進步"
  1. […] roga’s blog results (PHP 5.4 seems 33% faster than PHP 5.3) […]

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">