PEAR::Benchmark_Timerを使う時はBCMathがあった方がいい

PEARのBenchmark_Timerは手軽にベンチマークを取れて便利です。(サンプル

ただ、結果を出力すると4.1007995605469E-05のように浮動小数点の計算が何やらおかしくなることがありました。
で、ソースを見ると/usr/share/pear/Benchmark/Timer.phpの182行目でif (extension_loaded(‘bcmath’))という部分があってBCMath任意精度数学関数なるものがあることが判明。

マニュアルには

PHP 4.0.4以降、libbcmathがPHPに付属しています。このモジュールを使 用するために外部のライブラリを使用する必要はありません。

とあるのでソースからコンパイルすればデフォルトで使えるような感じですが、FedoraCore5に付属するPHP5.1.6はextensionが別になっていました。

# yum install php-bcmath

でインストール。これでベンチマーク結果のex timeが小数点第6位までの表示になって見やすくなりました。

This entry was posted in いじる. Bookmark the permalink. Both comments and trackbacks are currently closed.

Page optimized by WP Minify WordPress Plugin