[PHP-users 34488] PHPのバイトコード生成タイミングと実行速度

SHIN SUZUKI shin @ powerlinker.jp
2009年 4月 9日 (木) 08:43:40 JST


はじめまして、鈴木晋と申します。

PHPのバイトコード生成と実行の速度に関してご質問いたします。

10万行のテキストデータを処理する必要がありました。
各行ごとにオブジェクトを生成して条件にあったものを別ファイルに出力するというものです。

そのときPHPで(コマンドで)処理するとだいたい5分ほどかかったのですが、
この処理をPHPのようなスクリプト言語ではなくコンパイラ言語を用いて行った場合、 



理論上は速度の改善はどれだけ認められるでしょうか。

もちろん処理内容に依存するといえばそれまでなのでしょうが、
私の質問の本質的な内容は、

「PHP実行時にメモリに生成されるバイトコードはCなどでコンパイルされてできたバイトコードとどのように異なるか」
「PHPのバイトコードはevalなどがコードになければ生成タイミングは一度だけか」
ということに集約されます。

質問をするに至った経緯は、
知り合いに、「重いのはスクリプトでやろうとするからだよ。Cとか使えよ」と言われたのですが、
私としてはPHPのほうが書き慣れているので、バイトコード生成の時間であるミリ秒レベルの差であれば
PHPを使っていきたいのです。

ご回答のほどなにとぞよろしくお願いします。

鈴木



PHP-users メーリングリストの案内