まだ重たいCMSをお使いですか?
毎秒1000リクエスト を捌く超高速CMS「adiary

2006/06/23(金)6/23版スナップショット

スケルトンコンパイラの改良

スケルトンコンパイラをさらに改良しました。今回の変更は多大な労力を割いた割に、テスト環境においてたった1msしか高速化しませんでした*1。コンパイル時間は絶対遅くなっていると思いますが……、1度コンパイルすればキャッシュされるので気にしない方向で(汗)

しかし、スケルトンシステムの仕様は、後々コンパイラ次第である程度性能を改善出来るよう設計していました。今回たまたま気になって、泥沼に入ってしまったのですが、改良に改良を重ねた遍歴で用のない(スマートでない)コンパイル処理を何度も行っていたためスリム化。

とか言いながらパスは7パスになりましたけど……(^^;

newコンパイラ@VIA C3

VIA C3@500 という、とてつもなく環境にやさしい(遅い)CPUで今回の変更を試してみました。非キャッシュ環境(cgi動作)ではそこそこでしたが*2、キャッシュされた環境(mod_perl2 or SpeedyCGI)で実行してみたら、びっくり!!

Total time : 39.3 ms

とても C3@500MHz とは思えないレスポンスをたたき出しております(笑)*3

*1 : 27.1ms → 21.5ms → 20.1msというわけで最初から考えると、約25%の実行速度改善

*2 : 古いsnapshotと比較したら850ms→650msぐらい。バラ付きが大きいのと同じ条件ではないのでうまく比較できない

*3 : 体感速度が明らかに違いますもん(^^;