< prev index next >

src/share/vm/gc/cms/parNewGeneration.hpp

Print this page
rev 8461 : 8086056: ParNew: auto-tune ParGCCardsPerStrideChunk
Summary: Automatically calculate ParGCCardsPerStrideChunk based on the old gen capacity.
Reviewed-by:
rev 8409 : 8080879: Remove FlexibleWorkGang::set_for_termination
Reviewed-by: brutisso, kbarrett, pliden
rev 8396 : 8080110: Remove usage of CollectedHeap::n_par_threads() from root processing
Reviewed-by: jmasa, kbarrett
rev 8362 : 8079792: GC directory structure cleanup
Reviewed-by: brutisso, stefank, david

*** 343,359 **** // word being overwritten with a self-forwarding-pointer. void preserve_mark_if_necessary(oop obj, markOop m); void handle_promotion_failed(GenCollectedHeap* gch, ParScanThreadStateSet& thread_state_set); - protected: - bool _survivor_overflow; bool survivor_overflow() { return _survivor_overflow; } void set_survivor_overflow(bool v) { _survivor_overflow = v; } public: ParNewGeneration(ReservedSpace rs, size_t initial_byte_size, int level); ~ParNewGeneration() { for (uint i = 0; i < ParallelGCThreads; i++) --- 343,365 ---- // word being overwritten with a self-forwarding-pointer. void preserve_mark_if_necessary(oop obj, markOop m); void handle_promotion_failed(GenCollectedHeap* gch, ParScanThreadStateSet& thread_state_set); bool _survivor_overflow; bool survivor_overflow() { return _survivor_overflow; } void set_survivor_overflow(bool v) { _survivor_overflow = v; } + // true -> should automatically calculate ParGCCardsPerStrideChunk + // before each young GC + bool _should_adjust_cards_per_stride; + + // automatically calculate ParGCCardsPerStrideChunk based on the old + // gen capacity before each young GC + void adjust_cards_per_stride(const Generation& old_gen); + public: ParNewGeneration(ReservedSpace rs, size_t initial_byte_size, int level); ~ParNewGeneration() { for (uint i = 0; i < ParallelGCThreads; i++)
< prev index next >