Happy path

Aleksey Shipilev shade at redhat.com
Wed Feb 14 12:06:56 UTC 2018


On 02/14/2018 12:01 PM, Aleksey Shipilev wrote:
> On 02/14/2018 11:03 AM, Roland Westrelin wrote:
>> http://cr.openjdk.java.net/~roland/shenandoah/happypath/webrev.00/
> 
> This looks very promising!

hotspot_gc_shenandoah fails tests when partial heuristics are enabled. That must mean we cannot skip
matrix update pre-barrier when GC state is 0 -- it should be active even when heap is stable?

See:

$ CONF=linux-x86_64-normal-server-fastdebug make images run-test
TEST=gc/stress/gcbasher/TestGCBasherWithShenandoah.java
...
[0.857s][info][gc,start     ] GC(0) Pause Init Partial
[0.862s][info][gc,start     ] GC(0) Verify Before Partial, Level 4
# To suppress the following error report, specify this argument
# after -XX: or in .hotspotrc:  SuppressErrorAt=/shenandoahVerifier.cpp:56
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error
(/home/shade/trunks/shenandoah-jdk10/src/hotspot/share/gc/shenandoah/shenandoahVerifier.cpp:56),
pid=60634, tid=60638
#  Error: Before Partial, Reachable: Must be connected

Referenced from:
  interior location: 0x00000000c57cf3f4
  0x00000000c57cf3c0 - klass 0x000000010007ed88 java.nio.DirectByteBufferR
        allocated after complete mark start
        allocated after next mark start
        marked complete
        marked next
    not in collection set
  region: |0x0000153af407eba0|  175|R  |BTE 0x00000000c5780000, 0x00000000c5800000,
0x00000000c5800000|U 100%|T 100%|G   0%|S   0%|L 100%|FTS            1474|LTS            1481| |CP
0|TAMS 0x00000000c5780000, 0x00000000c5780000|

Object:
  0x00000000c01fc6c8 - klass 0x000000010007ed88 java.nio.DirectByteBufferR
        allocated after complete mark start
        allocated after next mark start
        marked complete
        marked next
    not in collection set
  region: |0x0000153af406e9a0|    3|R  |BTE 0x00000000c0180000, 0x00000000c0200000,
0x00000000c0200000|U 100%|T 100%|G   0%|S   0%|L 100%|FTS              24|LTS              31| |CP
0|TAMS 0x00000000c0180000, 0x00000000c0180000|

Forwardee:
  (the object itself)Matrix connections:
                 reference and object not connected
            fwd(reference) and object not connected
            reference and fwd(object) not connected
       fwd(reference) and fwd(object) not connected
        interior-reference and object not connected
   interior-reference and fwd(object) not connected


-Aleksey



More information about the shenandoah-dev mailing list