Details
Description
The purpose of the Hot Card Cache is to collect often dirtied cards during mutator time.
Anecdotal evidence indicates that the HCC does not contribute meaningfully to performance because:
- it is very small (JDK-8135064); an application doing lots of refinement will overflow it quickly
- an application doing little refinement will not use it
However its data structures use a card map across the whole heap, i.e. one byte per card, which is 0.2% of the heap. That memory could be used more usefully in other places.
Test and investigate its usefulness, also taking the concerns for JDK-8135064 into account.
There may also be better ways that use less memory to cause the same effect.
Anecdotal evidence indicates that the HCC does not contribute meaningfully to performance because:
- it is very small (JDK-8135064); an application doing lots of refinement will overflow it quickly
- an application doing little refinement will not use it
However its data structures use a card map across the whole heap, i.e. one byte per card, which is 0.2% of the heap. That memory could be used more usefully in other places.
Test and investigate its usefulness, also taking the concerns for JDK-8135064 into account.
There may also be better ways that use less memory to cause the same effect.
Attachments
Issue Links
- relates to
-
JDK-8225406 Account for hot card cache cards in distributing heap root scan times
-
- Closed
-
-
JDK-8135064 Scale hot card cache size with heap size
-
- Open
-