memcpy が遅い2
ページフォルトハンドラのどこが遅いかを調べるために RDTSC を利用した stat の仕組みを作った。その結果 空き page frame の検索に利用している Bitmap が遅い事が判明。確かに naive な実装 だ。色々と調べたところChrominium の bitmap.h - src/net/disk_cacheが良さそうなので移植した。5倍以上速くなって良い感じ。これを組み込んでみて更に足りないようなら 4MB ページを利用する予定。
ページフォルトハンドラのどこが遅いかを調べるために RDTSC を利用した stat の仕組みを作った。その結果 空き page frame の検索に利用している Bitmap が遅い事が判明。確かに naive な実装 だ。色々と調べたところChrominium の bitmap.h - src/net/disk_cacheが良さそうなので移植した。5倍以上速くなって良い感じ。これを組み込んでみて更に足りないようなら 4MB ページを利用する予定。