アシアルブログ

アシアルの中の人が技術と想いのたけをつづるブログです

PHPのパフォーマンス

別にハードウェア増やせばいいんじゃないのぉと言われそうですが。。。
いやいや、こういうくだらないことも重要だろう、ということで。

PHPをソースからコンパイルするときに、GCCコンパイルオプションを設定するときと、しないときの差ってどれくらいになるのか?

実験してみました。

使用したのは、AMD Opteron 246、メモリは不足しない程度のマシン。

コンパイルオプションとして設定したのは、以下のオプション。
GCCは3.4.5。

export CFLAGS="-O3 -msse -mmmx -msse2 -march=opteron -mfpmath=sse -funroll-loops"

PHPのオプションは --disable-all で、何もオプションを付けず。
その結果、わかったのは。。。。。

。。

。。

。。

ほとんど変わらん!!
2、3%くらいは速くなったかな。

浮動小数点のオプションを指定してるから、小数点の計算とかやってみたりしたのだけど、for文のループのみのときとパフォーマンスの差異はなし。

うーむ、2、3%でもよろこぶべきなのだろうか。。。

オプション指定するだけで、何の苦労もしてないのだから、喜ぶべきなのだろう!
勝手にそう思っておこう。


追記:
使用したのはこんな感じのスクリプト

for ($i = 0; $i < 100000; $i ++) {
$a = atan2(rand(1, 100000) / rand(1, 100000), 1);
}