On Mon, 18 Oct 2010 10:41:41 +0800, Shaohua Li wrote:
Hi Miao& Chris,
On Wed, Oct 13, 2010 at 05:00:56PM +0800, Miao Xie wrote:
When I investigated the performance problem of file creation/deletion, I found
btrfs spends lots of time in the b-tree search, so I consider whether we can use
the latest search result in the same transaction or not.
My idea follows:
we can add mask or time stamp into b-tree's node and leaf, then we know whether
the node/leaf is COWed by the other task. If not, we check if the node/leaf of
the latest search result contains the key that we want to search. By this way,
we can reuse the latest search result in the same transaction and reduce the CPU
time spent in the b-tree search.
Does this patch help a little for the tree search?
http://marc.info/?l=linux-btrfs&m=127175532803943&w=2
It doesn't solve all the issues, but in my test, it does help.
Thanks for your patch, but according to my test result, the time of b-tree search
has not been reduced. I think the reason is that extent-state is used when btrfs writes
data into the disk, so your patch is helpful when the disk I/O happens, but my test just
measures the cost of the b-tree searchs/insertions/removals, the disk I/O doesn't happen.
Regards
Miao
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html