- 14 4月, 2010 1 次提交
-
-
由 jmasa 提交于
Summary: Ensure a full GC that clears SoftReferences before throwing an out-of-memory Reviewed-by: ysr, jcoomes
-
- 08 4月, 2010 1 次提交
-
-
由 johnc 提交于
Summary: Humongous regions may contain multiple objects as a result of being retained as to-space from a previous GC and then re-used as to-space after being tagged as humongous. These changes include a check that causes retained to-space regions that are now tagged as humongous to be disregarded and a new to-space region allocated. Reviewed-by: tonyp, iveresov
-
- 06 4月, 2010 2 次提交
-
-
由 tonyp 提交于
Summary: Make sure that two marking cycles do not overlap, i.e., a new one can only start after the concurrent marking thread finishes all its work. In the fix I piggy-back a couple of minor extra fixes: some general code reformatting for consistency (only around the code I modified), the removal of a field (G1CollectorPolicy::_should_initiate_conc_mark) which doesn't seem to be used at all (it's only set but never read), as well as moving the "is GC locker active" test earlier into the G1 pause / Full GC and using a more appropriate method for it. Reviewed-by: johnc, jmasa, jcoomes, ysr
-
由 tonyp 提交于
Summary: Calling the methods region_stack_push() and region_stack_pop() concurrent is not MT-safe. The assumption is that we will only call region_stack_push() during a GC pause and region_stack_pop() during marking. Unfortunately, we also call region_stack_push() during marking which seems to be introducing subtle marking failures. This change introduces lock-based methods for pushing / popping to be called during marking. Reviewed-by: iveresov, johnc
-
- 03 4月, 2010 1 次提交
-
-
由 tonyp 提交于
Summary: Enable parallel RSet updating and scanning. Reviewed-by: iveresov, jmasa
-
- 31 3月, 2010 1 次提交
-
-
由 tonyp 提交于
Summary: Remove the G1GCPercent parameter, that specifies the desired GC overhead percentage in G1, and observe the GCTimeRatio parameter instead. Reviewed-by: jmasa, johnc
-
- 19 3月, 2010 2 次提交
-
-
由 jcoomes 提交于
Summary: process one item at a time from the objarray stack/queue Reviewed-by: apetrusenko, tonyp
-
由 tonyp 提交于
Summary: Newly-created threads always had the active field of their SATB queue initialized to false, even if they were created during marking. As a result, updates from threads created during a marking cycle were never enqueued and never processed. The fix includes remaining a method from active() to is_active() for readability and naming consistency. Reviewed-by: ysr, johnc
-
- 18 3月, 2010 1 次提交
-
-
由 apetrusenko 提交于
Summary: If CM task was aborted while scanning the last object of the specified region and the size of that object is equal to bitmap's granularity then the next offset would be equal or over the region limit which is exactly what the assertion states. Reviewed-by: ysr, tonyp, jmasa
-
- 12 3月, 2010 1 次提交
-
-
由 johnc 提交于
Summary: A TLAB became large enough to be considered a humongous object allowing multiple objects to be allocated in a humongous region, which violates a basic assumption about humongous regions. The changes ensure that TLABs cannot be regarded as humongous. Reviewed-by: iveresov, tonyp
-
- 04 3月, 2010 2 次提交
- 25 2月, 2010 1 次提交
-
-
由 tonyp 提交于
Summary: see synopsis Reviewed-by: johnc, jmasa
-
- 24 2月, 2010 3 次提交
-
-
由 jmasa 提交于
Summary: Rename marking stack sizing flags to be common between G1 and CMS Reviewed-by: ysr, tonyp
-
由 tonyp 提交于
Summary: replace the combination of the G1SteadyStateUsed / G1SteadyStateUsedDelta parameteres to decide the marking initiation threshold and instead use InitiatingHeapOccupancyPercent. Reviewed-by: ysr, johnc
-
由 tonyp 提交于
Summary: Rename G1 parameters to make them more consistent. Reviewed-by: jmasa, johnc
-
- 12 2月, 2010 1 次提交
-
-
由 iveresov 提交于
Summary: Implemented block-based work stealing. Moved copying during the rset scanning phase to the main copying phase. Made the size of rset table depend on the region size. Reviewed-by: apetrusenko, tonyp
-
- 09 2月, 2010 1 次提交
-
-
由 tonyp 提交于
Summary: The operations of re-using a RSet component and expanding the same RSet component were not mutually exlusive, and this could lead to RSets getting corrupted and entries being dropped. Reviewed-by: iveresov, johnc
-
- 03 2月, 2010 1 次提交
-
-
由 johnc 提交于
Summary: Invalid assert. Filter cards evicted from the card count cache instead. Reviewed-by: apetrusenko, tonyp
-
- 02 2月, 2010 1 次提交
-
-
由 ysr 提交于
Summary: Fixed missing pre-barrier calls for G1, modified C1 to call pre- and correct post-barrier interfaces, deleted obsolete interface, (temporarily) disabled redundant deferred barrier in BacktraceBuilder. Reviewed-by: coleenp, jmasa, kvn, never
-
- 27 1月, 2010 1 次提交
-
-
由 ysr 提交于
Summary: G1 now answers "no" to the query can_elide_initializing_store_barrier() in the product build. A debug flag allows alternate behaviour in debug builds. Reviewed-by: iveresov, tonyp
-
- 22 1月, 2010 1 次提交
-
-
由 jmasa 提交于
Summary: Adjust assertion checking for ExplicitGCInvokesConcurrentAndUnloadsClasses as a reason for class unloading Reviewed-by: ysr
-
- 14 1月, 2010 2 次提交
-
-
由 johnc 提交于
Summary: When enqueuing a completed PtrQueue buffer, cache a local pointer to the buffer and clear the field in the PtrQueue prior to unlocking the mutex referenced by the _lock field and pass the cached local value to the enqueuing routine. This will prevent the same completed buffer being enqueued multiple times, which causes the hang. Reviewed-by: ysr
-
由 ysr 提交于
Summary: Deferred card marks are now flushed during the gc prologue. Parallel[Scavege,OldGC] and SerialGC no longer defer card marks generated by COMPILER2 as a result of ReduceInitialCardMarks. For these cases, introduced a diagnostic option to defer the card marks, only for the purposes of testing and diagnostics. CMS and G1 continue to defer card marks. Potential performance concern related to single-threaded flushing of deferred card marks in the gc prologue will be addressed in the future. Reviewed-by: never, johnc
-
- 08 1月, 2010 1 次提交
-
-
由 jmasa 提交于
Summary: Block too small to split was not correctly putback to free lists. Reviewed-by: ysr
-
- 24 12月, 2009 1 次提交
-
-
由 ysr 提交于
Summary: Autonomic per-worker free block cache sizing, tunable coalition policies, fixes to per-size block statistics, retuned gain and bandwidth of some feedback loop filters to allow quicker reactivity to abrupt changes in ambient demand, and other heuristics to reduce fragmentation of the CMS old gen. Also tightened some assertions, including those related to locking. Reviewed-by: jmasa
-
- 17 12月, 2009 1 次提交
-
-
由 iveresov 提交于
Summary: Reworked the concurrent refinement: threads activation, feedback-based threshold adjustment, other miscellaneous fixes. Reviewed-by: apetrusenko, tonyp
-
- 10 12月, 2009 1 次提交
-
-
由 johnc 提交于
Summary: Change CollectionSetChooser::printSortedHeapRegions to handle null entries in _markedRegions growable array. Reviewed-by: jmasa, tonyp, iveresov
-
- 04 12月, 2009 1 次提交
-
-
由 tonyp 提交于
Summary: G1 reports committed memory instead of reserved memory from the Runtime.maxMemory() method Reviewed-by: ysr, jmasa
-
- 25 11月, 2009 1 次提交
-
-
由 johnc 提交于
Summary: Fixes a race on the dirty card queue completed buffer list between worker thread(s) performing a flush of a deferred store barrier (enqueueing a newly completed buffer) and worker thread(s) in the RSet updating code claiming completed buffers. Removed the routine that removes elements from the completed update buffer queue using a CAS. Reviewed-by: ysr, tonyp
-
- 21 11月, 2009 1 次提交
-
-
由 tonyp 提交于
Summary: It introduces the necessary memory pools for G1. Reviewed-by: mchung, ysr
-
- 20 11月, 2009 2 次提交
-
-
由 ysr 提交于
Summary: ScavengeALot now causes an incremental (but possibly partially young, in the G1 sense) collection. Some such collections may be abandoned on account of MMU specs. Band-aided a native leak associated with abandoned pauses, as well as an MMU tracker overflow related to frequent scavenge events in the face of a large MMU denominator interval; the latter is protected by a product flag that defaults to false. Reviewed-by: tonyp
-
由 ysr 提交于
Summary: Protected stats dump with a new develop flag; other than for the dump, reconciled product and non-product behaviour in face of the error. Reviewed-by: tonyp
-
- 14 11月, 2009 1 次提交
-
-
由 ysr 提交于
Summary: Added instrumentation and (temporary) assert in non-product mode; clipped the value when found out-of-bounds in product mode. Fix of original issue will follow collection of data from this instrumentation. Reviewed-by: jcoomes, tonyp
-
- 11 11月, 2009 1 次提交
-
-
由 jmasa 提交于
Summary: Use CollectorPolicy information instead of MaxNewSize Reviewed-by: ysr, jcoomes
-
- 07 11月, 2009 1 次提交
-
-
由 johnc 提交于
Summary: The type in the NEW_C_HEAP_ARRRY and FREE_C_HEAP_ARRAY calls in the buffer allocation code was changed from void* to char as the size argument had already been mulitipled by the byte size of an object pointer. Reviewed-by: ysr, tonyp
-
- 29 10月, 2009 1 次提交
-
-
由 phh 提交于
Summary: Apply modification of existing server heap size ergo to all collectors except CMS. Reviewed-by: jmasa, ysr, xlu
-
- 27 10月, 2009 1 次提交
-
-
由 apetrusenko 提交于
Summary: The fix addresses two memory leaks in G1 code: (1) _evac_failure_scan_stack - a resource object allocated on the C heap was not freed; (2) RSHashTable were linked into deleted list which was only cleared at full GC. Reviewed-by: tonyp, iveresov
-
- 22 10月, 2009 1 次提交
-
-
由 apetrusenko 提交于
Reviewed-by: tonyp, ysr
-
- 16 10月, 2009 1 次提交
-
-
由 ysr 提交于
6889757: G1: enable card mark elision for initializing writes from compiled code (ReduceInitialCardMarks) Summary: Defer the (compiler-elided) card-mark upon a slow-path allocation until after the store and before the next subsequent safepoint; G1 now answers yes to can_elide_tlab_write_barriers(). Reviewed-by: jcoomes, kvn, never
-