<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Steps to reproduce:</p>
    <p>Use git to checkout <a class="moz-txt-link-freetext" href="https://github.com/pfirmstone/JGDMS.git">https://github.com/pfirmstone/JGDMS.git</a></p>
    <p>Set the following path variables to your Java installation
      directory:</p>
    <p>JAVA_HOME=file path to java 8<br>
    </p>
    <p>JDK_HOME=file path to jdk 8 (same as above)</p>
    <p>Make sure the java command returns Java 8.<br>
    </p>
    <p>$java -version<br>
    </p>
    <p>Change directory into JGDMS</p>
    <p>$mvn package</p>
    <p>Change directory into qa: cd ../qa</p>
    <p>Create a file called build.properties</p>
    <p>Add the following 2 lines to build.properties (replace with your
      path):</p>
    river.home=C:/Users/peter/Documents/NetBeansProject/JGDMS<br>
    run.tests=org/apache/river/test/impl/mahalo/RandomStressTest.td
    <p>Then build the qa suite:</p>
    <p>$ant build</p>
    <p>Then edit the RandomStressTest.td file and add the following line
      (for repeatability)<br>
org.apache.river.test.impl.mahalo.RandomStressTest.seed=1620791630932</p>
    <p>Then change JAVA_HOME and JDK_HOME to your preferred version of
      java, and change your path to point to the java version you want
      to test.<br>
    </p>
    <p>Then run the test:</p>
    <p>$ant run-tests</p>
    <pre class="moz-signature" cols="72">-- 
Regards,
 
Peter Firmstone
Zeus Project Services Pty Ltd.</pre>
    <div class="moz-cite-prefix">On 12/05/2021 4:18 pm, Peter Firmstone
      wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:46c118cd-959a-5d37-7e60-f0bbb13393e6@zeus.net.au">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <p>你好先生范, <span class="VIiyi" lang="zh-CN"><span class="JLqJ4b
            ChMk0b" data-language-for-alternatives="zh-CN"
            data-language-to-translate-into="en" data-phrase-index="0"><span>不客气,</span></span></span></p>
      <p><a class="moz-txt-link-freetext"
href="https://github.com/pfirmstone/JGDMS/blob/trunk/qa/src/org/apache/river/test/impl/mahalo/RandomStressTest.java"
          moz-do-not-send="true">https://github.com/pfirmstone/JGDMS/blob/trunk/qa/src/org/apache/river/test/impl/mahalo/RandomStressTest.java</a></p>
      <p><a class="moz-txt-link-freetext"
href="https://github.com/pfirmstone/JGDMS/blob/trunk/qa/src/org/apache/river/test/impl/mahalo/RandomStressTest.td"
          moz-do-not-send="true">https://github.com/pfirmstone/JGDMS/blob/trunk/qa/src/org/apache/river/test/impl/mahalo/RandomStressTest.td</a></p>
      <p>With the follow property set to reproduce:</p>
      <p>org.apache.river.test.impl.mahalo.RandomStressTest.seed=1620791630932</p>
      <p>谢谢<br>
      </p>
      <pre class="moz-signature" cols="72">-- 
Regards,
 
Peter Firmstone
Zeus Project Services Pty Ltd.</pre>
      <p><br>
      </p>
      <div class="moz-cite-prefix">On 12/05/2021 3:42 pm, Xuelei Fan
        wrote:<br>
      </div>
      <blockquote type="cite"
        cite="mid:F81EFDAB-970C-443B-AA27-1220DB2DAE3A@oracle.com">
        <pre class="moz-quote-pre" wrap="">Hi Peter,

For further understanding, may I know more details about the test code?

Thanks,
Xuelei

</pre>
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">On May 11, 2021, at 10:31 PM, Peter Firmstone <a class="moz-txt-link-rfc2396E" href="mailto:peter.firmstone@zeus.net.au" moz-do-not-send="true"><peter.firmstone@zeus.net.au></a> wrote:

Just ran some performance stress tests to compare performance between Java 8 and Java 14 with SecurityManager enabled and using TLSv1.3 secure communications.

On Java 8, AccessController.getStackAccessControlContext[native]() is 7,741ms of process CPU consumption.

On Java 11, AccessController.getStackAccessControlContext[native]() is 7,769ms of process CPU consumption.

On Java 14, AccessController.getStackAccessControlContext[native]() is 133,815 ms of process CPU consumption.

On Java 16, AccessController.getStackAccessControlContext[native]() is 5,144 ms of process CPU consumption.

I wasn't expecting such a huge difference in performance.

Total time for the test on Java 8 is 97 seconds.

Total time for the test on Java 11 is 1 minute 37 seconds (same as Java 8)

Total time for the test on Java 14 is 2 minutes and 1 second.

Total time for the test on Java 16 is 1 minute and 36 seconds.

Both tests are using TLSv1.3 secure communications.

It would seem that Java 16, 8 and 11 are the performance winners in this case, where the above method is less than 0.5% of CPU. Java 14 is around 15% of CPU.

Not sure why Java 14 is performing poorly in comparison to other versions, the results are pretty consistent to the second.

-- 
Regards,
Peter Firmstone
Zeus Project Services Pty Ltd.

</pre>
        </blockquote>
      </blockquote>
    </blockquote>
    <pre class="moz-signature" cols="72">
</pre>
  </body>
</html>