-
Notifications
You must be signed in to change notification settings - Fork 396
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
Off heap #7173
base: master
Are you sure you want to change the base?
Off heap #7173
Conversation
d5f7d96
to
faf2a82
Compare
Just a reminder to please use an imperative voice in all commit/PR titles describing what the commit/PR is about. |
d4253b0
to
1507fd1
Compare
@@ -356,3 +357,9 @@ MM_GCExtensionsBase::usingSATBBarrier() | |||
#endif /* defined(OMR_GC_REALTIME) */ | |||
return false; | |||
} | |||
|
|||
bool | |||
MM_GCExtensionsBase::isAddressWithinHeap(void *address) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
check if we have something similar already
@@ -919,6 +919,7 @@ TraceAssert=Assert_MM_double_map_unreachable noEnv Overhead=1 Level=1 Assert="(f | |||
|
|||
TraceEvent=Trc_ParallelGlobalGC_shouldCompactThisCycle Overhead=1 Level=1 Group=compact Template="Current page granularity fragmented ratio: %f Threshold: %f" | |||
|
|||
//Trc_MM_double_map_Entry Obsolete |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove the line
@@ -1028,3 +1029,6 @@ TraceEvent=Trc_MM_MSSSS_flip_restore_tilt_after_percolate_current_status Overhea | |||
|
|||
TraceEvent=Trc_MM_clearheap Overhead=1 Level=1 Group=gclogger Template="clearheap with free memory size: %zu, object size: %zu" | |||
TraceEvent=Trc_MM_cleanUpSegmentsInAnonymousClassLoader_stats Overhead=1 Level=1 Group=gclogger Template="Anonymous classes: total: %zu, unloaded: %zu, searched ROM: %zu, found ROM fast: %zu, found ROM slow: %zu, not found ROM: %zu" | |||
|
|||
//Redefine Trc_MM_double_map_Entry to add originalDataSize and adjustedDataSize |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
remove this line
@@ -1028,3 +1029,6 @@ TraceEvent=Trc_MM_MSSSS_flip_restore_tilt_after_percolate_current_status Overhea | |||
|
|||
TraceEvent=Trc_MM_clearheap Overhead=1 Level=1 Group=gclogger Template="clearheap with free memory size: %zu, object size: %zu" | |||
TraceEvent=Trc_MM_cleanUpSegmentsInAnonymousClassLoader_stats Overhead=1 Level=1 Group=gclogger Template="Anonymous classes: total: %zu, unloaded: %zu, searched ROM: %zu, found ROM fast: %zu, found ROM slow: %zu, not found ROM: %zu" | |||
|
|||
//Redefine Trc_MM_double_map_Entry to add originalDataSize and adjustedDataSize | |||
TraceEntry=Trc_MM_double_map_EntryNew Overhead=1 Level=3 Group=arraylet Template="MM_IndexableObjectAllocationModel::doubleMapArraylets. originalDataSize: %p, adjustedDataSize: %p, spine: %p, leafSize: %p leavesCount: %zu" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
if this is redefining an existing one, then obsolete the old one
possible only if other (J9) changes goes together at the same time
otherwise (if OMR goes first), we can obsolete it only later
@@ -1513,8 +1523,10 @@ class MM_GCExtensionsBase : public MM_BaseVirtual { | |||
, isArrayletDoubleMapRequested(false) | |||
, isArrayletDoubleMapAvailable(false) | |||
#endif /* defined(OMR_GC_DOUBLE_MAP_ARRAYLETS) */ | |||
, isVirtualLargeObjectHeapRequested(false) | |||
#if defined(OMR_GC_SPARSE_HEAP_ALLOCATION) | |||
, isVirtualLargeObjectHeapRequested(true) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we will probably enable off-heap by default once all the code is delivered, but it should be done in downstream project during startup
Modifications required to complete the introduction of an optimized memory management scheme for large arrays in a region-based garbage collector. More specifically, this is a new heap scheme and large object organization (in-heap and off-heap), an enhanced method for allocating large objects (proxy objects), and an optimized technique of accessing large arrays during runtime (JIT optimizations). Related to: #14005 Signed-off-by: Jonathan Oommen jon.oommen@gmail.com
Signed-off-by: hulin <linhu@ca.ibm.com>
Signed-off-by: hulin <linhu@ca.ibm.com>
Modifications for Off-Heap Technology for Large Arrays in Region-Based Collectors
Carryforward from #6948