Skip to content
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

Add ARC, an Adaptive Replacement Cache. #2820

Merged
merged 1 commit into from
Oct 27, 2023
Merged

Add ARC, an Adaptive Replacement Cache. #2820

merged 1 commit into from
Oct 27, 2023

Conversation

skypexu
Copy link
Member

@skypexu skypexu commented Oct 19, 2023

What problem does this PR solve?

Issue Number: #2819

Problem Summary:

Add ARC Cache, an Adaptive Replacement Cache.
Normal LRU cache is not scan-resistant while ARC is.
ARC also has ghost cache (key cache) can improve cache behavior.

What's Changed:
A head file arc_cache.h is added and included by lru_cache.h

How it Works:

Side effects(Breaking backward compatibility? Performance regression?):
GetLast() function may not work as same as LRUCache, because ARC cache is not ordered by time when a cache
item is entered or hit.

Check List

  • Relevant documentation/comments is changed or added
  • I acknowledge that all my contributions will be made under the project's license

@wuhongsong
Copy link
Contributor

cicheck

1 similar comment
@wuhongsong
Copy link
Contributor

cicheck

@wuhongsong wuhongsong closed this Oct 24, 2023
@wuhongsong wuhongsong reopened this Oct 24, 2023
@wuhongsong
Copy link
Contributor

cicheck

2 similar comments
@skypexu
Copy link
Member Author

skypexu commented Oct 24, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 24, 2023

cicheck

@wuhongsong wuhongsong closed this Oct 25, 2023
@wuhongsong wuhongsong reopened this Oct 25, 2023
@wuhongsong
Copy link
Contributor

cicheck

6 similar comments
@skypexu
Copy link
Member Author

skypexu commented Oct 26, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

1 similar comment
@skypexu
Copy link
Member Author

skypexu commented Oct 27, 2023

cicheck

@wuhongsong wuhongsong merged commit c63296b into opencurve:master Oct 27, 2023
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