JDK-6483660 : Disentangle ensure_parsability() and TLAB retirement
  • Type: Bug
  • Component: hotspot
  • Sub-Component: gc
  • Affected Version: 6
  • Priority: P4
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2006-10-18
  • Updated: 2010-04-02
  • Resolved: 2006-11-14
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 JDK 7 Other
6u4Fixed 7Fixed hs10Fixed
Related Reports
Relates :  
See comments section for related email.

SUGGESTED FIX Event: putback-to Parent workspace: /net/jano.sfbay/export/disk05/hotspot/ws/main/gc_baseline (jano.sfbay:/export/disk05/hotspot/ws/main/gc_baseline) Child workspace: /net/prt-web.sfbay/prt-workspaces/20061102125615.ysr.tlab/workspace (prt-web:/net/prt-web.sfbay/prt-workspaces/20061102125615.ysr.tlab/workspace) User: ysr Comment: --------------------------------------------------------- Job ID: 20061102125615.ysr.tlab Original workspace: neeraja:/net/spot/scratch/ysr/tlab Submitter: ysr Archived data: /net/prt-archiver.sfbay/data/archived_workspaces/main/gc_baseline/2006/20061102125615.ysr.tlab/ Webrev: http://analemma.sfbay.sun.com/net/prt-archiver.sfbay/data/archived_workspaces/main/gc_baseline/2006/20061102125615.ysr.tlab/workspace/webrevs/webrev-2006.11.02/index.html Fixed 6483660: Disentangle ensure_parsability() and TLAB retirement Webrev: http://analemma.sfbay/net/spot/scratch/ysr/tlab/webrev We currently have the "ensure_parsability" interface that both fills up unused portions of TLABs with filler arrays and retires them, but many uses of the interface do not need TLAB retirement. This putback addresses this issue by providing for a "retire_tlabs" option to the interface, so that callers may retire the unused TLABs only as necessary. This can lead to better efficiency in TLAB usage in the presence of orthogonal heap iterations and such, as well as reduce the attendant noise in the sensor data for TLAB ergonomics. In the event that the option ZeroTLAB is on, we force TLAB retirement since we would otherwise need an additional pass over the TLABs to re-zero them once done with whatever needed the heap to be in a parsable state. We took this opportunity to also fix the mis-spelling of the method name. Reviewed by: Jon Masamitsu Fix Verified: yes Verification Testing: refworkload fastdebug/product +/-ZeroTLAB ParallelGC/CMS Other testing: . runThese -full w/ ParallelGC and CMS . refworkload for performance data (improvement immersed in noise, not significant) Files: update: src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.cpp update: src/share/vm/gc_implementation/parallelScavenge/parallelScavengeHeap.hpp update: src/share/vm/gc_implementation/parallelScavenge/psMarkSweep.cpp update: src/share/vm/gc_implementation/parallelScavenge/psParallelCompact.cpp update: src/share/vm/gc_implementation/parallelScavenge/psScavenge.cpp update: src/share/vm/gc_implementation/shared/vmGCOperations.cpp update: src/share/vm/gc_interface/collectedHeap.cpp update: src/share/vm/gc_interface/collectedHeap.hpp update: src/share/vm/memory/concurrentMarkSweepGeneration.cpp update: src/share/vm/memory/dump.cpp update: src/share/vm/memory/genCollectedHeap.cpp update: src/share/vm/memory/genCollectedHeap.hpp update: src/share/vm/memory/generation.hpp update: src/share/vm/memory/heapInspection.cpp update: src/share/vm/memory/threadLocalAllocBuffer.cpp update: src/share/vm/memory/threadLocalAllocBuffer.hpp update: src/share/vm/prims/jvmpi.cpp update: src/share/vm/prims/jvmtiTagMap.cpp update: src/share/vm/runtime/thread.cpp update: src/share/vm/services/heapDumper.cpp update: src/share/vm/utilities/vmError.cpp Examined files: 3888 Contents Summary: 21 update 3867 no action (unchanged)

EVALUATION Target to 7.0; small change that might touch a line or two in many files.