- 175 名前:114 mailto:sage [2005/06/02(木) 15:26:03 ]
- >>173
>関数の中でif判定し直ぐにreturnする場合 これはスタティックな解析での最適化でもある程度できる気がします。 (関数の先頭に近いifを呼び出し側に埋め込めばよい。LTCGでやってる かどうかはわかりませんが) 対して if(a){ } else if(b){ } では、a,bどっちが多いのかは実行時までわからない。 で、実際に実行させてみてbがaより多かったら、上下 入れ替えてしまうのがPGO、というのが私の認識。 if や case がたくさんあるときは利いてくると思う。 最近のCPUって分岐ペナルティでかいって言うし。 まあ、こんな単純なケースだと気の利いたプログラマならベター ケースでコーディングしているだろうけど、機械が力まかせにや るのには及ばないんじゃないかな。しかもプログラム全体にまた がってときた日にゃぁ…
|

|