src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp Fri Nov 1 16:25:45 2013
--- new/src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp Fri Nov 1 16:25:45 2013
*** 29,71 ****
--- 29,47 ----
// There is a nice batch of tested generation sizing code in
// TwoGenerationCollectorPolicy. Lets reuse it!
class GenerationSizer : public TwoGenerationCollectorPolicy {
! public:
GenerationSizer() {
// Partial init only!
initialize_flags();
initialize_size_info();
! }
void initialize_flags() {
// Do basic sizing work
TwoGenerationCollectorPolicy::initialize_flags();
assert(UseSerialGC ||
!FLAG_IS_DEFAULT(ParallelGCThreads) ||
(ParallelGCThreads > 0),
"ParallelGCThreads should be set before flag initialization");
// The survivor ratio's are calculated "raw", unlike the
// default gc, which adds 2 to the ratio value. We need to
// make sure the values are valid before using them.
if (MinSurvivorRatio < 3) {
MinSurvivorRatio = 3;
}
if (InitialSurvivorRatio < 3) {
InitialSurvivorRatio = 3;
}
}
size_t min_young_gen_size() { return _min_gen0_size; }
size_t young_gen_size() { return _initial_gen0_size; }
size_t max_young_gen_size() { return _max_gen0_size; }
size_t min_old_gen_size() { return _min_gen1_size; }
size_t old_gen_size() { return _initial_gen1_size; }
size_t max_old_gen_size() { return _max_gen1_size; }
};
! private:
+
+ void trace_gen_sizes(const char* const str);
+
+ // The alignment used for boundary between young gen and old gen
! static size_t default_gen_alignment() { return 64 * K * HeapWordSize; }
+ protected:
+
+ void initialize_alignments();
+ void initialize_flags();
+ void initialize_size_info();
+ };
#endif // SHARE_VM_GC_IMPLEMENTATION_PARALLELSCAVENGE_GENERATIONSIZER_HPP
src/share/vm/gc_implementation/parallelScavenge/generationSizer.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File