Some optimization to traversal-marking
Roman Kennke
rkennke at redhat.com
Tue Jul 17 20:14:25 UTC 2018
Here come some optimizations to traversal-marking:
- It turns out we don't need to check in-traversal-set in the hot path.
We set up TAMS such that it would exclude everything not in traversal
set, and include everything that is in traversal set. The way we checked
it, we actually checked the same thing twice. Even the underlying math
is the same.
- We also don't need the check-before-mark, because the parMark()
implementation in BitMap already checks-before-mark, but more
efficiently (don't need to calculate offset+bits twice).
- Constify a bunch of variables involved in the mark loop.
http://cr.openjdk.java.net/~rkennke/traversal-simpler-mark/webrev.00/
Testing: tier3_gc_shenandoah ok
Ok?
Roman
More information about the shenandoah-dev
mailing list