< prev index next >

src/share/vm/gc/g1/g1CollectionSet.hpp

Print this page
rev 11545 : [mq]: 8159978-collection-set-as-array
rev 11546 : [mq]: 8159978-erikh-review

*** 24,34 **** #ifndef SHARE_VM_GC_G1_G1COLLECTIONSET_HPP #define SHARE_VM_GC_G1_G1COLLECTIONSET_HPP #include "gc/g1/collectionSetChooser.hpp" - #include "gc/g1/g1FixedSizeStack.hpp" #include "memory/allocation.hpp" #include "utilities/debug.hpp" #include "utilities/globalDefinitions.hpp" class G1CollectedHeap; --- 24,33 ----
*** 47,57 **** uint _eden_region_length; uint _survivor_region_length; uint _old_region_length; // The actual collection set as a set of region indices. ! G1FixedSizeStack<uint> _collection_set_regions; // The number of bytes in the collection set before the pause. Set from // the incrementally built collection set at the start of an evacuation // pause, and incremented in finalize_old_part() when adding old regions // (if any) to the collection set. --- 46,58 ---- uint _eden_region_length; uint _survivor_region_length; uint _old_region_length; // The actual collection set as a set of region indices. ! uint* _collection_set_regions; ! volatile size_t _collection_set_cur_length; ! size_t _collection_set_max_length; // The number of bytes in the collection set before the pause. Set from // the incrementally built collection set at the start of an evacuation // pause, and incremented in finalize_old_part() when adding old regions // (if any) to the collection set.
*** 125,150 **** uint eden_region_length() const { return _eden_region_length; } uint survivor_region_length() const { return _survivor_region_length; } uint old_region_length() const { return _old_region_length; } ! // Incremental collection set Support // Initialize incremental collection set info. void start_incremental_building(); // Perform any final calculations on the incremental collection set fields // before we can use them. void finalize_incremental_building(); // Reset the contents of the collection set. ! void clear() { ! _collection_set_regions.clear(); ! } // Iterate over the collection set, applying the given HeapRegionClosure on all of them. ! void iterate(HeapRegionClosure* cl); // Iterate over the collection set, applying the given HeapRegionClosure on all of them, // trying to optimally spread out starting position of total_workers workers given the // caller's worker_id. // If may_be_aborted is true, iteration may be aborted using the return value of the --- 126,151 ---- uint eden_region_length() const { return _eden_region_length; } uint survivor_region_length() const { return _survivor_region_length; } uint old_region_length() const { return _old_region_length; } ! // Incremental collection set support // Initialize incremental collection set info. void start_incremental_building(); // Perform any final calculations on the incremental collection set fields // before we can use them. void finalize_incremental_building(); // Reset the contents of the collection set. ! void clear(); // Iterate over the collection set, applying the given HeapRegionClosure on all of them. ! // If may_be_aborted is true, iteration may be aborted using the return value of the ! // called closure method. ! void iterate(HeapRegionClosure* cl, bool may_be_aborted = false); // Iterate over the collection set, applying the given HeapRegionClosure on all of them, // trying to optimally spread out starting position of total_workers workers given the // caller's worker_id. // If may_be_aborted is true, iteration may be aborted using the return value of the
< prev index next >