file_status_cache

boost::filesystem::statusとディレクトリリストをキャッシュするfile_status_cacheを実装してみました。
今日の差分
このキャッシュは期限も容量制限もなく、単に蓄積されます。
更新時間のチェックもしていないので、bjam実行中に追加や削除が行われても反映されません。
ざっとソースを読む限り、オリジナルのbjamもそうなっているのでこれが仕様です。

ver 時間
v1 87.500秒
v2 70.734秒
no_node_d 56.609秒
cache 51.140秒
cache 47.657秒

う〜ん、あまり速くなりませんでした。
I/Oの問題ではないのかな。

あー、間違ってprofileでビルドしてたので、古いプログラムを動かしてました。
多少効果があった模様。