]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max_search_bytes 43745/head
authorKefu Chai <kchai@redhat.com>
Tue, 1 Jun 2021 11:14:33 +0000 (19:14 +0800)
committerMauricio Faria de Oliveira <mfo@canonical.com>
Wed, 10 Nov 2021 15:10:03 +0000 (12:10 -0300)
commit793e5ade8c92d5d8b9327c100c647619f02a04c4
tree2a45ae0007a6a34cd172164cfe70e713e3d82ed7
parente72d85e760c42cac103e544ba7d8ef6581b93ce7
os/bluestore/AvlAllocator: introduce bluestore_avl_alloc_ff_max_search_bytes

so AvlAllocator can switch from the first-first mode to best-fit mode
without walking through the whole space map tree. in the
highly-fragmented system, iterating the whole tree could hurt the
performance of fast storage system a lot.

the idea comes from openzfs's metaslab allocator.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 5a26875049d13130ffe5954428da0e1b9750359f)
Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com>
 Conflicts:
src/common/options/global.yaml.in:
- Moved new option into src/common/options.cc
src/common/options.cc
src/os/bluestore/AvlAllocator.cc
src/os/bluestore/AvlAllocator.h