看板 DFBSD_kernel 關於我們 聯絡資訊
:I am trying to understand the hinting mechanism. So before this commit, :B-Tree nodes were always allocated physical linearly out of a big block, :while after this commit, you pass a hint, where the B-Tree node could or :should physically be placed within a big-block, and if that space is not :yet allocated, the B-Tree is allocated at the hinted position. If the :hinted position is already allocated, you simply fall back to linear :allocation. That is how I understand it. I do not know how you calculate :those hints. : :Regards, : Michael It's fairly unsophisticated at the moment, but it will get better. Basically the filesystem breaks the disk space up into 8MB big-blocks. The hinting mechanism allows the block allocator to allocate from any big-block rather then allocating linearly using an iterator. The biggest performance issue I'm seeing right now is related to where directory entry data is placed on the disk. The block allocator fixes do not specifically address this issue (yet). -Matt Matthew Dillon <dillon@backplane.com>