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

runtime: split data/bss into 4K chunks for scanning #8888

Closed
dvyukov opened this issue Oct 7, 2014 · 2 comments
Closed

runtime: split data/bss into 4K chunks for scanning #8888

dvyukov opened this issue Oct 7, 2014 · 2 comments

Comments

@dvyukov
Copy link
Member

dvyukov commented Oct 7, 2014

If we split data/bss into 4K chunks, then it will improve parallelization of scanning
and make it more incremental (something we need for concurrent GC with GOMAXPROCS=1).
I've done it once, but it was reverted during precision changes.
When we have 1-bit/word pointer info, it will be trivial to restore:
1. Calculate number of 4K chunks.
2. Adjust scanning parfor boundary accordingly.
3. If a thread's parfor iteration index is data/bss scanning, it finds the relevant
piece of data/bass and relevant piece of data/bss pointer info and scans only that piece.
@dvyukov
Copy link
Member Author

dvyukov commented May 24, 2019

This was fixed by d3df04c right? @aclements

@aclements
Copy link
Member

Yep! Thanks for scrubbing these old issues.

@golang golang locked and limited conversation to collaborators May 23, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

4 participants