< prev index next >

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

Print this page
rev 13021 : imported patch 8162928-micro-optimizations-in-remembered-set-scan
rev 13023 : imported patch 8177707-specialize-refine-card
rev 13024 : imported patch 8177707-review-kim-sangheon
rev 13028 : imported patch 8178148-more-detailed-scan-rs-logging
rev 13029 : imported patch 8178148-sangheon-review

*** 106,119 **** // The "worker_i" param is for the parallel case where the id // of the worker thread calling this function can be helpful in // partitioning the work to be done. It should be the same as // the "i" passed to the calling thread's work(i) function. // In the sequential case this param will be ignored. ! // ! // Returns the number of cards scanned while looking for pointers ! // into the collection set. ! size_t oops_into_collection_set_do(G1ParPushHeapRSClosure* cl, CodeBlobClosure* heap_region_codeblobs, uint worker_i); // Prepare for and cleanup after an oops_into_collection_set_do // call. Must call each of these once before and after (in sequential --- 106,116 ---- // The "worker_i" param is for the parallel case where the id // of the worker thread calling this function can be helpful in // partitioning the work to be done. It should be the same as // the "i" passed to the calling thread's work(i) function. // In the sequential case this param will be ignored. ! void oops_into_collection_set_do(G1ParPushHeapRSClosure* cl, CodeBlobClosure* heap_region_codeblobs, uint worker_i); // Prepare for and cleanup after an oops_into_collection_set_do // call. Must call each of these once before and after (in sequential
*** 121,131 **** // opportunity to sequential setup and teardown of structures needed by a // parallel iteration over the CS's RS.) void prepare_for_oops_into_collection_set_do(); void cleanup_after_oops_into_collection_set_do(); ! size_t scan_rem_set(G1ParPushHeapRSClosure* oops_in_heap_closure, CodeBlobClosure* heap_region_codeblobs, uint worker_i); G1RemSetScanState* scan_state() const { return _scan_state; } --- 118,128 ---- // opportunity to sequential setup and teardown of structures needed by a // parallel iteration over the CS's RS.) void prepare_for_oops_into_collection_set_do(); void cleanup_after_oops_into_collection_set_do(); ! void scan_rem_set(G1ParPushHeapRSClosure* oops_in_heap_closure, CodeBlobClosure* heap_region_codeblobs, uint worker_i); G1RemSetScanState* scan_state() const { return _scan_state; }
*** 183,194 **** }; class G1ScanRSClosure : public HeapRegionClosure { G1RemSetScanState* _scan_state; ! size_t _cards_done; ! size_t _cards; G1CollectedHeap* _g1h; G1ParPushHeapRSClosure* _push_heap_cl; CodeBlobClosure* _code_root_cl; --- 180,193 ---- }; class G1ScanRSClosure : public HeapRegionClosure { G1RemSetScanState* _scan_state; ! size_t _cards_scanned; ! size_t _cards_claimed; ! size_t _cards_skipped; ! G1CollectedHeap* _g1h; G1ParPushHeapRSClosure* _push_heap_cl; CodeBlobClosure* _code_root_cl;
*** 211,222 **** double strong_code_root_scan_time_sec() { return _strong_code_root_scan_time_sec; } ! size_t cards_done() { return _cards_done;} ! size_t cards_looked_up() { return _cards;} }; class UpdateRSOopClosure: public ExtendedOopClosure { HeapRegion* _from; G1RemSet* _rs; --- 210,222 ---- double strong_code_root_scan_time_sec() { return _strong_code_root_scan_time_sec; } ! size_t cards_scanned() const { return _cards_scanned; } ! size_t cards_claimed() const { return _cards_claimed; } ! size_t cards_skipped() const { return _cards_skipped; } }; class UpdateRSOopClosure: public ExtendedOopClosure { HeapRegion* _from; G1RemSet* _rs;
< prev index next >