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

3. why is the gc copying all the pages in the block each time and not only some of them ? the GARBAGE_COLLECTION method is writing the "write amplification" stats to the socket but for some reason it's always 9. i already removed the += but i need to understand why the copy_page_nb is 9 (is this a bug?) #9

Closed
davidsaOpenu opened this issue Feb 17, 2016 · 4 comments

Comments

@davidsaOpenu
Copy link
Owner

No description provided.

@eyalfishel
Copy link
Contributor

I started debugging it, and copy_page_nb is 2 or 3, which according to the code is not a bug.
In what revision did this happen?

@ialexyi
Copy link
Contributor

ialexyi commented May 28, 2016

It isn't a bug.
The flash device can't rewrite a single page, because erase operation required.
The minimal erase operation can erase block not a page.
In this case block is 10 pages.
After erase the block, the data of 9 page must be written back.
This is a reason of 9 over writes for each written new page.

@davidsaOpenu
Copy link
Owner Author

Great. Thanks, guys!

@davidsaOpenu
Copy link
Owner Author

So that means we have a dumb CG algorithm :-(

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

No branches or pull requests

3 participants