パフォーマンスチューニング じゅもんをつかうな
findFree は lookup をリニアサーチではなくてハッシュにすれば良いのではないかと思い実装したが、最小被害範囲でのコードではハッシュのセットアップコストの方が大きく断念。
それにしてもリニアサーチが感覚的にも遅すぎると思い、サンプルリストをサーチするコードを書いてみた。
やはり遅いので調べたら C++ 上インライン展開必須のコードが一部わざと展開されないようなコードになっていた。その理由が全く思い出せないので元に戻した。
今日は意外と大きく速くなった。要因は2つ。
- インライン展開
- APPEND インストラクションの復活