« Fedora Core 6に乗り換え | Main | emacs-22.0.94 »

February 26, 2007

性能について

性能について気になっていることがある。

とりあえずコンピュータの性能をフルに使っているかどうかは、たいていCPU使用率がどの程度上がっているかで判断することが多いだろう。なので、システムとしてこれ以上の性能は出ないと判断するには、そうなるような条件を与えて、CPU使用率が100%近くに達している必要がある。もしそうでないとすれば、ハードウェアかソフトウェアのどこかに性能を阻害する要因があると逆説的に考えることが多い。

上記は、開発現場のエライ人がよくふりかざす論理だ。話としては間違っていないが、それをどう解決すれば良いかという話には付き合ってくれない。

むかし、PBXとワークステーションの間でRS232Cの通信をするプログラムがあった。そのプログラムを実行するとかなりCPU使用率が高くなるので、上記の論理で言うと性能が良いソフトウェアということになるのかもしれないが、プログラムのソースを見たら、RS232Cポートをreadシステムコールを使って1バイトずつ読み出していた。なのでシステムコールの呼出回数が多くなり、大した性能も出ていないのにCPU使用率が上がるようになっていた。「どうせ性能が出ないなら、CPU使用率が上がるようにしておけ!」ということだったのかもしれない。

いずれにしても、性能はブラックボックスで計っていても何も見えてこない。なのでプロファイラを用いてプログラムがどのように動いているかを確認する必要がある。もっと言えば、プロファイラを使って性能分析が出来るような実装にする必要があるということだ。

|

« Fedora Core 6に乗り換え | Main | emacs-22.0.94 »

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack

TrackBack URL for this entry:
http://app.cocolog-nifty.com/t/trackback/74224/14231761

Listed below are links to weblogs that reference 性能について:

« Fedora Core 6に乗り換え | Main | emacs-22.0.94 »