Details
-
Enhancement
-
Resolution: Fixed
-
P4
-
22
-
b18
Description
`CodeCache::initialize_heaps` assumes CodeCache is a combination of NonProfiledCodeHeap, ProfiledCodeHeap and NonNMethodCodeHeap. Adding new CodeCache segments causes a lot of changes in the function.
We need to refactor the function to minimize changes when new segments are added to CodeCache.
The ideal solution should be `CodeCache::initialize_heaps` not to depend on any particular code heap at all. It should accept a valid CodeCache layout description and initialize each code heap according to the description. A valid CodeCache layout description is created based on defaults, cmd options and ergonomics. The process of the description creation can fail if it is not possible to have a requested CodeCache layout.
We need to refactor the function to minimize changes when new segments are added to CodeCache.
The ideal solution should be `CodeCache::initialize_heaps` not to depend on any particular code heap at all. It should accept a valid CodeCache layout description and initialize each code heap according to the description. A valid CodeCache layout description is created based on defaults, cmd options and ergonomics. The process of the description creation can fail if it is not possible to have a requested CodeCache layout.
Attachments
Issue Links
- blocks
-
JDK-8314661 Implement code heap for methods known to be hot/used
-
- In Progress
-
- relates to
-
JDK-8330061 Cleanup: follow code heaps order in CodeCache initialization and logging, code heap info in logs
-
- Open
-