Skip to content

add linearized b+tree in lsmt - #381

Merged
BigVan merged 1 commit into
containerd:mainfrom
liulanzheng:main
Oct 9, 2025
Merged

add linearized b+tree in lsmt#381
BigVan merged 1 commit into
containerd:mainfrom
liulanzheng:main

Conversation

@liulanzheng

Copy link
Copy Markdown
Member

What this PR does / why we need it:

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

Please check the following list:

  • Does the affected code have corresponding tests, e.g. unit test, E2E test?
  • Does this change require a documentation update?
  • Does this introduce breaking changes that would require an announcement or bumping the major version?
  • Do all new files have an appropriate license header?

@liulanzheng
liulanzheng requested a review from BigVan September 25, 2025 12:41
@liulanzheng

Copy link
Copy Markdown
Member Author

@WaberZhuang @lihuiba @BigVan cc

@liulanzheng
liulanzheng force-pushed the main branch 8 times, most recently from 0d7883e to b59c5cc Compare September 28, 2025 04:17
Comment thread src/overlaybd/lsmt/index.cpp Outdated
}
};

#else

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The fallback path (not using LBPT) should be always compiled, and used according to runtime conditions.

Comment thread src/overlaybd/lsmt/index.cpp Outdated

// CPUID leaf 7, subleaf 0
// AVX-512F is bit 16 of EBX
if (__get_cpuid_count(7, 0, &eax, &ebx, &ecx, &edx)) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

better using __builtin_cpu_supports("avx512f")

@liulanzheng
liulanzheng force-pushed the main branch 5 times, most recently from ec30bc9 to 6bf0655 Compare September 28, 2025 11:56
@liulanzheng
liulanzheng requested a review from lihuiba September 28, 2025 12:03
@liulanzheng
liulanzheng force-pushed the main branch 4 times, most recently from 35d6527 to 611c6a7 Compare September 29, 2025 12:05
@liulanzheng
liulanzheng requested review from lihuiba and removed request for lihuiba September 30, 2025 02:11

class IndexLBPTAcc : public IndexLBPT {
public:
IndexLBPTAcc(vector<SegmentMapping> &&m, uint64_t vsize, LinearizedBptree *lbpt)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

simple using IndexLBPT:: IndexLBPT;

Comment thread src/overlaybd/lsmt/index.cpp Outdated
}
};

Index* new_index_with_lineriazed_bptree(vector<SegmentMapping> &&m, uint64_t vsize = 0) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

inline

@BigVan

BigVan commented Oct 9, 2025

Copy link
Copy Markdown
Member

lgtm

@BigVan
BigVan merged commit 5472a0e into containerd:main Oct 9, 2025
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants