-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: simple performance bench for foyer-memory #336
Open
xiaguan
wants to merge
260
commits into
foyer-rs:main
Choose a base branch
from
xiaguan:bench_perf
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: MrCroxx <[email protected]>
* feat: add foyer bench, reorg workspace Signed-off-by: MrCroxx <[email protected]> * sort cargo file Signed-off-by: MrCroxx <[email protected]> * make fmt and clippy happy Signed-off-by: MrCroxx <[email protected]> * fix bug Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* ci: add asan test Signed-off-by: MrCroxx <[email protected]> * fix Cargo.toml and CI Signed-off-by: MrCroxx <[email protected]> * regen ci Signed-off-by: MrCroxx <[email protected]> * rename CI step, test asan fail Signed-off-by: MrCroxx <[email protected]> * regen CI Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
* chore: add license checker Signed-off-by: MrCroxx <[email protected]> * fix license checker config Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
…rs#15) Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* feat: introduce instrusive indexers and collections Signed-off-by: MrCroxx <[email protected]>
* feat: introduce FTL-like storage engine Signed-off-by: MrCroxx <[email protected]> * update ci Signed-off-by: MrCroxx <[email protected]> * sort cargo file Signed-off-by: MrCroxx <[email protected]> * fix memory leak Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* feat: enable direct i/o on linux target - enable direct i/o on linux target - refine flusher and reclaimer Signed-off-by: MrCroxx <[email protected]> * fix unit test Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
…s#30) * chore: remove unused old storage engien and other components Signed-off-by: MrCroxx <[email protected]> * update ci Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
…-rs#31) Signed-off-by: MrCroxx <[email protected]>
* feat: impl storage recovery Signed-off-by: MrCroxx <[email protected]> * chore Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
* feat: add segment fifo eviction policy Signed-off-by: MrCroxx <[email protected]> * export fifo fs store Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
* feat: export mods Signed-off-by: MrCroxx <[email protected]> * make cargo sort happy Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
This reverts commit a8a56cc.
Signed-off-by: MrCroxx <[email protected]>
* fix: deadlock fix deadlocks: 1. exclusive lock was not `Send` but unsafe impled. 2. submit flush task await blocks `set_region_evictable` 3. no new reclamation task created after `set_region_evctable` if all write process are waiting Signed-off-by: MrCroxx <[email protected]> * update ci Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* fix: gracefullly shutdown runners Use `Store::shutdown_runners()` to gracefully shutdown runners.` Signed-off-by: MrCroxx <[email protected]> * log warn if send failed instead of panic Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
- fix region advance - fix recovery slice destroy - seal last dirty region when shutdown Signed-off-by: MrCroxx <[email protected]>
* feat: introduce prometheus metrics Signed-off-by: MrCroxx <[email protected]> * calc metrics Signed-off-by: MrCroxx <[email protected]> * fix registry metrics Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* chore: bump bench tools version Signed-off-by: MrCroxx <[email protected]> * chore: update change log, restore unreleased version Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* feat: add eviction alg hit ratio bench * refactor: use enum cache instead of generic cache The enum cache is more easy to use since it only has two generic parameters. The generic cache is more like an internal interface. Signed-off-by: xiaguan <[email protected]> * chore : sort foyer_memory's dependencies Signed-off-by: xiaguan <[email protected]> * chore: use hakari to gen better dependencies Signed-off-by: xiaguan <[email protected]> --------- Signed-off-by: xiaguan <[email protected]>
* chore: update license Signed-off-by: MrCroxx <[email protected]> * chore: fix license checker Signed-off-by: MrCroxx <[email protected]> * chore: update license header Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
* Add S3Fifo eviction for memory * fix: refine s3fifo, fix some bugs Signed-off-by: MrCroxx <[email protected]> * fix: fix license Signed-off-by: MrCroxx <[email protected]> * refactor: expose s3fifo, fix hakari, add s3fifo fuzzy test Signed-off-by: MrCroxx <[email protected]> * bench: add s3fifo to hit ratio bench Signed-off-by: MrCroxx <[email protected]> * test: add s3fifo uts Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]> Co-authored-by: MrCroxx <[email protected]>
…#307) * chore: bump foyer-memory to 0.1.3 Signed-off-by: MrCroxx <[email protected]> * chore: bump foyer-intrusive to 0.3.1 Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
…er-rs#314) Signed-off-by: MrCroxx <[email protected]>
…rs#315) Signed-off-by: MrCroxx <[email protected]>
* refactor: remove usage of unstable features Signed-off-by: MrCroxx <[email protected]> * refactor: some more Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
…er-rs#317) * refactor: use crate allocator_api2 to make foyer build on stable Signed-off-by: MrCroxx <[email protected]> * fix: use stable pipeline for ci tests, use nightly for sanitizer Signed-off-by: MrCroxx <[email protected]> * fix: update ci prefix key Signed-off-by: MrCroxx <[email protected]> * fix: try fix ci Signed-off-by: MrCroxx <[email protected]> * fix: update ci nightly version Signed-off-by: MrCroxx <[email protected]> * chore: try resolve github issue Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
* test: run CI on both linux and macos Signed-off-by: MrCroxx <[email protected]> * fix: fix build on macos Signed-off-by: MrCroxx <[email protected]> * fix: try fix ci run on targets Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
* doc: update README and add a simple example Signed-off-by: MrCroxx <[email protected]> * chore: update Cargo.toml Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
* chore: fix ci coverage Signed-off-by: MrCroxx <[email protected]> * chore: fix check Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: MrCroxx <[email protected]>
) * refactor: remove Handle bound from Eviction Signed-off-by: MrCroxx <[email protected]> * refactor: loose bound of in-memory eviction related traits Signed-off-by: MrCroxx <[email protected]> --------- Signed-off-by: MrCroxx <[email protected]>
Signed-off-by: xiaguan <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What's changed and what's your intention?
As title
Checklist
make all
(ormake fast
instead if the old tests are not modified) in my local environment.Related issues or PRs (optional)