RFR(L) 8153224 Monitor deflation prolong safepoints (CR3/v2.03/6-for-jdk13)

Daniel D. Daugherty daniel.daugherty at oracle.com
Mon May 6 23:04:33 UTC 2019


Greetings,

Just wanted to report the current SPECjbb2015 test results on these bits.

Baseline: jdk-13+18
Exp:      CR3/v2.03/6-for-jdk13

Average SPECjbb2015 Results for Each OS (CR3/v2.03/6-for-jdk13)

      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
        28585.00   25012.00  22868.00        8990.90  Linux-X64 base
        27700.00   23838.70  22619.50        8075.30  Linux-X64 exp

         5731.40    4793.00   4742.90        1550.00  MacOSX base
         5621.00    4701.00   4665.60        1526.20  MacOSX exp

        16346.60   14054.10  13136.30        3418.00  Solaris-X64 base
        16309.30   13912.50  13254.80        3418.90  Solaris-X64 exp


This time, I'm not going to even try to say what these results mean.

For this round of SPECjbb2015 testing, I rebooted each machine before
starting the 10 runs of base or exp of SPECjbb2015 testing.

Linux-X64 Machine:
   - Ubuntu 16.04, Dell T7600, 64GB RAM
   - Intel(R) Xeon(R) CPU E5-2665 0 @ 2.40GHz, 2 CPUs x 8 cores x 2 threads

MacOSX Machine:
   - MacOS 10.13.6, Mac Mini, mid 2011, 16GB RAM
   - 2 GHz Intel Core i7 (I7-2635QM), 1 CPU x 4 cores x 2 threads

Solaris-X64 Machine:
   - Solaris 11.2 SRU5.5, Dell T7600, 64GB RAM
   - Intel(R) Xeon(R) CPU E5-2665 0 @ 2.40GHz, 2 CPUs x 8 cores x 2 threads

Dan

$ ksh summarize_SPECjbb2015_results.ksh SPECjbb2015.Lin-X64.base.*
      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
           28585      24908     22868           9083 
SPECjbb2015.Lin-X64.base.01
           28585      25122     22868           8188 
SPECjbb2015.Lin-X64.base.02
           28585      25379     22868           8734 
SPECjbb2015.Lin-X64.base.03
           28585      24457     22868           9213 
SPECjbb2015.Lin-X64.base.04
           28585      24830     22868           9074 
SPECjbb2015.Lin-X64.base.05
           28585      25028     22868           8964 
SPECjbb2015.Lin-X64.base.06
           28585      25379     22868           9799 
SPECjbb2015.Lin-X64.base.07
           28585      24908     22868           9213 
SPECjbb2015.Lin-X64.base.08
           28585      24730     22868           9031 
SPECjbb2015.Lin-X64.base.09
           28585      25379     22868           8610 
SPECjbb2015.Lin-X64.base.10
---------------  ---------  --------  -------------  --------
        28585.00   25012.00  22868.00        8990.90  average of values

$ ksh summarize_SPECjbb2015_results.ksh SPECjbb2015.Lin-X64.exp.*
      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
           28585      23838     22868           8707 
SPECjbb2015.Lin-X64.exp.01
           28585      23838     21439           8292 
SPECjbb2015.Lin-X64.exp.02
           28585      23838     22868           7755 
SPECjbb2015.Lin-X64.exp.03
           28585      23838     22868           8903 
SPECjbb2015.Lin-X64.exp.04
           23838      23076     22646           7885 
SPECjbb2015.Lin-X64.exp.05
           24482      23715     22034           6544 
SPECjbb2015.Lin-X64.exp.06
           28585      23838     22868           7729 
SPECjbb2015.Lin-X64.exp.07
           28585      23838     22868           7966 
SPECjbb2015.Lin-X64.exp.08
           28585      23838     22868           8362 
SPECjbb2015.Lin-X64.exp.09
           28585      24730     22868           8610 
SPECjbb2015.Lin-X64.exp.10
---------------  ---------  --------  -------------  --------
        27700.00   23838.70  22619.50        8075.30  average of values

$ ksh summarize_SPECjbb2015_results.ksh SPECjbb2015.MacOSX.base.*
      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
            6725       5621      4708           1525 
SPECjbb2015.MacOSX.base.01
            5621       4701      4778           1605 
SPECjbb2015.MacOSX.base.02
            5621       4701      4778           1595 
SPECjbb2015.MacOSX.base.03
            5621       4701      4778           1606 
SPECjbb2015.MacOSX.base.04
            5621       4701      4497           1505 
SPECjbb2015.MacOSX.base.05
            5621       4701      4778           1556 
SPECjbb2015.MacOSX.base.06
            5621       4701      4778           1556 
SPECjbb2015.MacOSX.base.07
            5621       4701      4778           1471 
SPECjbb2015.MacOSX.base.08
            5621       4701      4778           1560 
SPECjbb2015.MacOSX.base.09
            5621       4701      4778           1521 
SPECjbb2015.MacOSX.base.10
---------------  ---------  --------  -------------  --------
         5731.40    4793.00   4742.90        1550.00  average of values

$ ksh summarize_SPECjbb2015_results.ksh SPECjbb2015.MacOSX.exp.*
      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
            5621       4701      4497           1556 
SPECjbb2015.MacOSX.exp.01
            5621       4701      4778           1484 
SPECjbb2015.MacOSX.exp.02
            5621       4701      4497           1471 
SPECjbb2015.MacOSX.exp.03
            5621       4701      4497           1574 
SPECjbb2015.MacOSX.exp.04
            5621       4701      4778           1447 
SPECjbb2015.MacOSX.exp.05
            5621       4701      4778           1601 
SPECjbb2015.MacOSX.exp.06
            5621       4701      4497           1521 
SPECjbb2015.MacOSX.exp.07
            5621       4701      4778           1566 
SPECjbb2015.MacOSX.exp.08
            5621       4701      4778           1521 
SPECjbb2015.MacOSX.exp.09
            5621       4701      4778           1521 
SPECjbb2015.MacOSX.exp.10
---------------  ---------  --------  -------------  --------
         5621.00    4701.00   4665.60        1526.20  average of values

$ ksh summarize_SPECjbb2015_results.ksh SPECjbb2015.Sol-X64.base.*
      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
           16584      14267     13267           3547 
SPECjbb2015.Sol-X64.base.01
           16584      14136     13267           3632 
SPECjbb2015.Sol-X64.base.02
           16584      13837     13267           3679 
SPECjbb2015.Sol-X64.base.03
           16584      13837     13267           3154 
SPECjbb2015.Sol-X64.base.04
           16584      14456     13267           3534 
SPECjbb2015.Sol-X64.base.05
           16584      13837     13267           2805 
SPECjbb2015.Sol-X64.base.06
           16584      13957     13267           3047 
SPECjbb2015.Sol-X64.base.07
           16584      14361     12438           3825 
SPECjbb2015.Sol-X64.base.08
           16584      14086     13267           3717 
SPECjbb2015.Sol-X64.base.09
           14210      13767     12789           3240 
SPECjbb2015.Sol-X64.base.10
---------------  ---------  --------  -------------  --------
        16346.60   14054.10  13136.30        3418.00  average of values

$ ksh summarize_SPECjbb2015_results.ksh SPECjbb2015.Sol-X64.exp.*
      hbIR           hbIR
(max attempted)  (settled)  max-jOPS  critical-jOPS  run_name
---------------  ---------  --------  -------------  --------
           16584      13837     13267           3418 
SPECjbb2015.Sol-X64.exp.01
           16584      13837     13267           3418 
SPECjbb2015.Sol-X64.exp.02
           13837      13397     13145           2838 
SPECjbb2015.Sol-X64.exp.03
           16584      14086     13267           3825 
SPECjbb2015.Sol-X64.exp.04
           16584      13837     13267           2920 
SPECjbb2015.Sol-X64.exp.05
           16584      14267     13267           3534 
SPECjbb2015.Sol-X64.exp.06
           16584      14353     13267           3915 
SPECjbb2015.Sol-X64.exp.07
           16584      13837     13267           3323 
SPECjbb2015.Sol-X64.exp.08
           16584      13837     13267           3637 
SPECjbb2015.Sol-X64.exp.09
           16584      13837     13267           3361 
SPECjbb2015.Sol-X64.exp.10
---------------  ---------  --------  -------------  --------
        16309.30   13912.50  13254.80        3418.90  average of values



On 5/6/19 11:52 AM, Daniel D. Daugherty wrote:
> Greetings,
>
> I had some discussions with Karen about a race that was in the
> ObjectMonitor::enter() code in CR2/v2.02/5-for-jdk13. This race was
> theoretical and I had no test failures due to it. The fix is pretty
> simple: remove the special case code for async deflation in the
> ObjectMonitor::enter() function and rely solely on the ref_count
> for ObjectMonitor::enter() protection.
>
> During those discussions Karen also floated the idea of using the
> ref_count field instead of the contentions field for the Async
> Monitor Deflation protocol. I decided to go ahead and code up that
> change and I have run it through the usual stress and Mach5 testing
> with no issues. It's also known as v2.03 (for those for with the
> patches) and as webrev/6-for-jdk13 (for those with webrev URLs).
> Sorry for all the names...
>
> Main bug URL:
>
>     JDK-8153224 Monitor deflation prolong safepoints
>     https://bugs.openjdk.java.net/browse/JDK-8153224
>
> The project is currently baselined on jdk-13+18.
>
> Here's the full webrev URL:
>
> http://cr.openjdk.java.net/~dcubed/8153224-webrev/6-for-jdk13.full/
>
> Here's the incremental webrev URL:
>
> http://cr.openjdk.java.net/~dcubed/8153224-webrev/6-for-jdk13.inc/
>
> I have also updated the OpenJDK wiki to reflect the CR3 changes:
>
> https://wiki.openjdk.java.net/display/HotSpot/Async+Monitor+Deflation
>
> This version of the patch has been thru Mach5 tier[1-8] testing on
> Oracle's usual set of platforms. My Solaris-X64 stress kit run had
> no issues. Kitchensink8H on product, fastdebug, and slowdebug bits
> had no failures on Linux-X64; MacOSX fastdebug and slowdebug and
> Solaris-X64 release had the usual "Too large time diff" complaints.
> 12 hour Inflate2 runs on product, fastdebug and slowdebug bits on
> Linux-X64, MacOSX and Solaris-X64 had no failures. My Linux-X64
> stress kit is running right now.
>
> I've done the SPECjbb2015 baseline and CR3 runs. I need to gather
> the results and analyze them.
>
> Thanks, in advance, for any questions, comments or suggestions.
>
> Dan
>
>
> On 4/25/19 12:38 PM, Daniel D. Daugherty wrote:
>> Greetings,
>>
>> I have a small but important bug fix for the Async Monitor Deflation
>> project ready to go. It's also known as v2.02 (for those for with the
>> patches) and as webrev/5-for-jdk13 (for those with webrev URLs). Sorry
>> for all the names...
>>
>> JDK-8222295 was pushed to jdk/jdk two days ago so that baseline patch
>> is out of our hair.
>>
>> Main bug URL:
>>
>>     JDK-8153224 Monitor deflation prolong safepoints
>>     https://bugs.openjdk.java.net/browse/JDK-8153224
>>
>> The project is currently baselined on jdk-13+17.
>>
>> Here's the full webrev URL:
>>
>> http://cr.openjdk.java.net/~dcubed/8153224-webrev/5-for-jdk13.full/
>>
>> Here's the incremental webrev URL (JDK-8153224):
>>
>> http://cr.openjdk.java.net/~dcubed/8153224-webrev/5-for-jdk13.inc/
>>
>> I still have to update the OpenJDK wiki to reflect the CR2 changes:
>>
>> https://wiki.openjdk.java.net/display/HotSpot/Async+Monitor+Deflation
>>
>> This version of the patch has been thru Mach5 tier[1-6] testing on
>> Oracle's usual set of platforms. Mach5 tier[7-8] is running now.
>> My stress kit is running on Solaris-X64 now. Kitchensink8H is running
>> now on product, fastdebug, and slowdebug bits on Linux-X64, MacOSX
>> and Solaris-X64. 12 hour Inflate2 runs are running now on product,
>> fastdebug and slowdebug bits on Linux-X64, MacOSX and Solaris-X64.
>> I'll start my my stress kit on Linux-X64 sometime on Sunday (after
>> my jdk-13+18 stress run is done).
>>
>> I'll do SPECjbb2015 baseline and CR2 runs after all the stress
>> testing is done.
>>
>> Thanks, in advance, for any questions, comments or suggestions.
>>
>> Dan
>>
>>
>> On 4/19/19 11:58 AM, Daniel D. Daugherty wrote:
>>> Greetings,
>>>
>>> I finally have CR1 for the Async Monitor Deflation project ready to
>>> go. It's also known as v2.01 (for those for with the patches) and as
>>> webrev/4-for-jdk13 (for those with webrev URLs). Sorry for all the
>>> names...
>>>
>>> Main bug URL:
>>>
>>>     JDK-8153224 Monitor deflation prolong safepoints
>>>     https://bugs.openjdk.java.net/browse/JDK-8153224
>>>
>>> Baseline bug fixes URL:
>>>
>>>     JDK-8222295 more baseline cleanups from Async Monitor Deflation 
>>> project
>>>     https://bugs.openjdk.java.net/browse/JDK-8222295
>>>
>>> The project is currently baselined on jdk-13+15.
>>>
>>> Here's the webrev for the latest baseline changes (JDK-8222295):
>>>
>>> http://cr.openjdk.java.net/~dcubed/8153224-webrev/4-for-jdk13.8222295
>>>
>>> Here's the full webrev URL (JDK-8153224 only):
>>>
>>> http://cr.openjdk.java.net/~dcubed/8153224-webrev/4-for-jdk13.full/
>>>
>>> Here's the incremental webrev URL (JDK-8153224):
>>>
>>> http://cr.openjdk.java.net/~dcubed/8153224-webrev/4-for-jdk13.inc/
>>>
>>> So I'm looking for reviews for both JDK-8222295 and the latest version
>>> of JDK-8153224...
>>>
>>> I still have to update the OpenJDK wiki to reflect the CR changes:
>>>
>>> https://wiki.openjdk.java.net/display/HotSpot/Async+Monitor+Deflation
>>>
>>> This version of the patch has been thru Mach5 tier[1-3] testing on
>>> Oracle's usual set of platforms. Mach5 tier[4-6] is running now and
>>> Mach5 tier[78] will be run later today. My stress kit on Solaris-X64
>>> is running now. Linux-X64 stress testing will start on Sunday. I'm
>>> planning to do Kitchensink runs, SPECjbb2015 runs and my monitor
>>> inflation stress tests on Linux-X64, MacOSX and Solaris-X64.
>>>
>>> Thanks, in advance, for any questions, comments or suggestions.
>>>
>>> Dan
>>>
>>>
>>> On 3/24/19 9:57 AM, Daniel D. Daugherty wrote:
>>>> Greetings,
>>>>
>>>> Welcome to the OpenJDK review thread for my port of Carsten's work on:
>>>>
>>>>     JDK-8153224 Monitor deflation prolong safepoints
>>>>     https://bugs.openjdk.java.net/browse/JDK-8153224
>>>>
>>>> Here's a link to the OpenJDK wiki that describes my port:
>>>>
>>>> https://wiki.openjdk.java.net/display/HotSpot/Async+Monitor+Deflation
>>>>
>>>> Here's the webrev URL:
>>>>
>>>> http://cr.openjdk.java.net/~dcubed/8153224-webrev/3-for-jdk13/
>>>>
>>>> Here's a link to Carsten's original webrev:
>>>>
>>>> http://cr.openjdk.java.net/~cvarming/monitor_deflate_conc/0/
>>>>
>>>> Earlier versions of this patch have been through several rounds of
>>>> preliminary review. Many thanks to Carsten, Coleen, Robbin, and
>>>> Roman for their preliminary code review comments. A very special
>>>> thanks to Robbin and Roman for building and testing the patch in
>>>> their own environments (including specJBB2015).
>>>>
>>>> This version of the patch has been thru Mach5 tier[1-8] testing on
>>>> Oracle's usual set of platforms. Earlier versions have been run
>>>> through my stress kit on my Linux-X64 and Solaris-X64 servers
>>>> (product, fastdebug, slowdebug).Earlier versions have run Kitchensink
>>>> for 12 hours on MacOSX, Linux-X64 and Solaris-X64 (product, fastdebug
>>>> and slowdebug). Earlier versions have run my monitor inflation stress
>>>> tests for 12 hours on MacOSX, Linux-X64 and Solaris-X64 (product,
>>>> fastdebug and slowdebug).
>>>>
>>>> All of the testing done on earlier versions will be redone on the
>>>> latest version of the patch.
>>>>
>>>> Thanks, in advance, for any questions, comments or suggestions.
>>>>
>>>> Dan
>>>>
>>>> P.S.
>>>> One subtest in gc/g1/humongousObjects/TestHumongousClassLoader.java
>>>> is currently failing in -Xcomp mode on Win* only. I've been trying
>>>> to characterize/analyze this failure for more than a week now. At
>>>> this point I'm convinced that Async Monitor Deflation is aggravating
>>>> an existing bug. However, I plan to have a better handle on that
>>>> failure before these bits are pushed to the jdk/jdk repo.
>>>>
>>>
>>>
>>
>>
>
>



More information about the hotspot-runtime-dev mailing list