Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8072498

Multi-thread JNI weak reference processing

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 12
    • None
    • hotspot
    • gc
    • b09
    • generic
    • generic

      Recent posting to hotspot-gc-dev@openjdk.java.net shows very high JNI weak reference processing times, i.e. over 6 seconds during a parallel CMS remark.

      Here is a GC log entry for a CMS Remark:
      2015-02-03T03:24:27.419-0800: 17917.047: [Rescan (parallel) , 0.0625400 secs]2015-02-03T03:24:27.482-0800: 17917.110: [weak refs processing2015-02-03T03:24:27.482-0800: 17917.110: [SoftReference, 1 refs, 0.0010820 secs]2015-02-03T03:24:27.483-0800: 17917.111: [WeakReference, 0 refs, 0.0015340 secs]2015-02-03T03:24:27.484-0800: 17917.112: [FinalReference, 0 refs, 0.0007930 secs]2015-02-03T03:24:27.485-0800: 17917.113: [PhantomReference, 0 refs, 0.0008860 secs]2015-02-03T03:24:27.486-0800: 17917.114: [JNI Weak Reference, 6.1104040 secs], 6.1148360 secs]2015-02-03T03:24:33.596-0800: 17923.225: [scrub string table, 0.0006670 secs] [1 CMS-remark: 531682K(5242880K)] 1827698K(7759488K), 6.1785190 secs] [Times: user=7.22 sys=0.00, real=6.18 secs]

      AFAIK, all HotSpot collectors (G1 GC, Parallel GC, CMS GC and Serial GC) are single threaded when it comes to processing JNI weak references even with -XX:+ParallelRefProcEnabled.
      This enhancement request is for multi-threading the processing of JNI weak references.

            kbarrett Kim Barrett
            huntch Charlie Hunt
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: