file_status_cache
boost::filesystem::statusとディレクトリリストをキャッシュするfile_status_cacheを実装してみました。
今日の差分
このキャッシュは期限も容量制限もなく、単に蓄積されます。
更新時間のチェックもしていないので、bjam実行中に追加や削除が行われても反映されません。
ざっとソースを読む限り、オリジナルのbjamもそうなっているのでこれが仕様です。
ver | 時間 |
---|---|
v1 | 87.500秒 |
v2 | 70.734秒 |
no_node_d | 56.609秒 |
cache | 47.657秒 |
う〜ん、あまり速くなりませんでした。
I/Oの問題ではないのかな。
あー、間違ってprofileでビルドしてたので、古いプログラムを動かしてました。
多少効果があった模様。