comparison src/share/vm/runtime/globals.hpp @ 3357:fc2b798ab316

6883834: ParNew: assert(!_g->to()->is_in_reserved(obj),"Scanning field twice?") with LargeObjects tests Summary: Fixed process_chunk_boundaries(), used for parallel card scanning when using ParNew/CMS, so as to prevent double-scanning, or worse, non-scanning of imprecisely marked objects exceeding parallel chunk size. Made some sizing parameters for parallel card scanning diagnostic, disabled ParallelGCRetainPLAB, and elaborated and clarified some comments. Reviewed-by: stefank, johnc
author ysr
date Tue, 10 May 2011 00:33:21 -0700
parents 54a56bbaf95b
children 30d3b13f1938
comparison
equal deleted inserted replaced
3325:54a56bbaf95b 3357:fc2b798ab316
1458 "Verbose output for parallel GC.") \ 1458 "Verbose output for parallel GC.") \
1459 \ 1459 \
1460 product(intx, ParallelGCBufferWastePct, 10, \ 1460 product(intx, ParallelGCBufferWastePct, 10, \
1461 "wasted fraction of parallel allocation buffer.") \ 1461 "wasted fraction of parallel allocation buffer.") \
1462 \ 1462 \
1463 product(bool, ParallelGCRetainPLAB, true, \ 1463 diagnostic(bool, ParallelGCRetainPLAB, false, \
1464 "Retain parallel allocation buffers across scavenges.") \ 1464 "Retain parallel allocation buffers across scavenges; " \
1465 " -- disabled because this currently conflicts with " \
1466 " parallel card scanning under certain conditions ") \
1465 \ 1467 \
1466 product(intx, TargetPLABWastePct, 10, \ 1468 product(intx, TargetPLABWastePct, 10, \
1467 "target wasted space in last buffer as pct of overall allocation")\ 1469 "target wasted space in last buffer as pct of overall allocation")\
1468 \ 1470 \
1469 product(uintx, PLABWeight, 75, \ 1471 product(uintx, PLABWeight, 75, \
1493 "we simulate overflow; a smaller number increases frequency") \ 1495 "we simulate overflow; a smaller number increases frequency") \
1494 \ 1496 \
1495 product(uintx, ParGCDesiredObjsFromOverflowList, 20, \ 1497 product(uintx, ParGCDesiredObjsFromOverflowList, 20, \
1496 "The desired number of objects to claim from the overflow list") \ 1498 "The desired number of objects to claim from the overflow list") \
1497 \ 1499 \
1498 product(uintx, CMSParPromoteBlocksToClaim, 16, \ 1500 diagnostic(intx, ParGCStridesPerThread, 2, \
1501 "The number of strides per worker thread that we divide up the " \
1502 "card table scanning work into") \
1503 \
1504 diagnostic(intx, ParGCCardsPerStrideChunk, 256, \
1505 "The number of cards in each chunk of the parallel chunks used " \
1506 "during card table scanning") \
1507 \
1508 product(uintx, CMSParPromoteBlocksToClaim, 16, \
1499 "Number of blocks to attempt to claim when refilling CMS LAB for "\ 1509 "Number of blocks to attempt to claim when refilling CMS LAB for "\
1500 "parallel GC.") \ 1510 "parallel GC.") \
1501 \ 1511 \
1502 product(uintx, OldPLABWeight, 50, \ 1512 product(uintx, OldPLABWeight, 50, \
1503 "Percentage (0-100) used to weight the current sample when" \ 1513 "Percentage (0-100) used to weight the current sample when" \