Skip to content
Success

Changes

Summary

  1. Modifications for Off-Heap Technology for Large Arrays (commit: 982a33b) (details)
Commit 982a33b32b80322c423995d20be770e4a968b4c5 by Lin Hu
Modifications for Off-Heap Technology for Large Arrays

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).

- new define OMR_GC_SPARSE_HEAP_ALLOCATION
- set OMR_GC_SPARSE_HEAP_ALLOCATION ON
- obsolete Trc_MM_double_map_Entry, once all usages are updated.
- replace J9VM_GC_ENABLE_SPARSE_HEAP_ALLOCATION with
   OMR_GC_SPARSE_HEAP_ALLOCATION.
- empty method offsetOfContiguousDataAddrField() in ObjectModel
- empty method generateArrayElementShiftAmountTrees() in TransformUtil
- empty method isOffHeapAllocationEnabled() in ObjectModel

Signed-off-by: hulin <linhu@ca.ibm.com>
(commit: 982a33b)
The file was modified example/glue/ArrayletObjectModel.hpp (diff)
The file was modified gc/base/j9mm.tdf (diff)
The file was modified gc/base/GCExtensionsBase.cpp (diff)
The file was modified gc/base/SparseAddressOrderedFixedSizeDataPool.cpp (diff)
The file was modified gc/base/AllocateDescription.hpp (diff)
The file was modified omrmakefiles/configure.mk.in (diff)
The file was modified gc/verbose/VerboseHandlerOutput.cpp (diff)
The file was modified gc/include/RootScannerTypes.h (diff)
The file was modified include_core/omrcfg.h.in (diff)
The file was modified cmake/config.cmake (diff)
The file was modified compiler/env/OMRObjectModel.hpp (diff)
The file was modified configure.ac (diff)
The file was modified configure (diff)
The file was modified compiler/optimizer/TransformUtil.hpp (diff)
The file was modified include_core/omrcfg.cmake.h.in (diff)
The file was modified compiler/compile/OMRSymbolReferenceTable.hpp (diff)
The file was modified compiler/compile/OMRSymbolReferenceTable.cpp (diff)