inline2
ヘッダファイルの宣言にinlineを足すだけでインライン化してくれたら楽なのに。呼び出す側からすればそのインライン関数の実装位置が分らないから無理か。
仕方がないから実装をヘッダファイルの下の方にコピると、今度はinlineじゃないものが多重定義で怒られる。。
実装位置がヘッダとソースに分れると見辛くなるから嫌なんだけど、それ以外の解決方法が分らない。orz
...
inline展開すごい。力の限り展開したら、めちゃ速くなった。
inline () ./kb 63.88s user 0.21s system 99% cpu 1:04.25 total inline (+synapse) ./kb 57.88s user 0.19s system 99% cpu 58.250 total inline (+mysynapse) ./kb 53.02s user 0.18s system 99% cpu 53.374 total inline (+neuron) ./kb 48.19s user 0.19s system 99% cpu 48.555 total inline (+chaosneuron) ./kb 25.95s user 0.09s system 99% cpu 26.100 total inline (+studypattern) ./kb 25.32s user 0.08s system 99% cpu 25.494 total
実行時間が40%に激減。さらに何故かサイズも微妙にダウン(しっかり見てなかったから気のせいかも)。