<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<br>
<br>
<div class="moz-cite-prefix">On 2016-03-24 08:27, Bengt Rutisson
wrote:<br>
</div>
<blockquote cite="mid:56F396CD.9000605@oracle.com" type="cite">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<br>
Hi Jon,<br>
<br>
<div class="moz-cite-prefix">On 2016-03-23 17:09, Jon Masamitsu
wrote:<br>
</div>
<blockquote cite="mid:56F2BFBB.5010902@oracle.com" type="cite">
<meta content="text/html; charset=utf-8"
http-equiv="Content-Type">
<font face="Times New Roman, Times, serif">Bengt,<br>
<br>
Thanks for the review.<br>
<br>
The delta webrev with you suggestion to use OutputAnalyzer
shouldMatch is<br>
here<br>
<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://cr.openjdk.java.net/%7Ejmasa/8152208/webrev_delta.01_02/">http://cr.openjdk.java.net/~jmasa/8152208/webrev_delta.01_02/</a><br>
</font></blockquote>
<br>
Sorry, I should have been more clear. I meant that you can replace
all Matchers with shouldMatch(). Not just the first occurrence. <br>
<br>
<blockquote cite="mid:56F2BFBB.5010902@oracle.com" type="cite"><font
face="Times New Roman, Times, serif"> <br>
I used my own Matcher in cases where I wanted to extract more
information<br>
after I had a match.<br>
</font></blockquote>
<br>
I normally add a System.out.println(output.getOutput()); when I
want more information about what is happening in the test.<br>
</blockquote>
<br>
After re-reading your comment I think I misunderstood. You meant
that you need to get a particular group from the regexp? I think you
can use the OutputAnalyzer.firstMatch() method for that:<br>
<br>
<a class="moz-txt-link-freetext" href="http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/file/906fa01e86a0/test/testlibrary/jdk/test/lib/OutputAnalyzer.java#l327">http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/file/906fa01e86a0/test/testlibrary/jdk/test/lib/OutputAnalyzer.java#l327</a><br>
<br>
Thanks,<br>
Bengt<br>
<br>
<blockquote cite="mid:56F396CD.9000605@oracle.com" type="cite"> <br>
Thanks,<br>
Bengt<br>
<br>
<blockquote cite="mid:56F2BFBB.5010902@oracle.com" type="cite"><font
face="Times New Roman, Times, serif"> <br>
Full webrev is<br>
<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://cr.openjdk.java.net/%7Ejmasa/8152208/webrev.02/">http://cr.openjdk.java.net/~jmasa/8152208/webrev.02/</a><br>
<br>
Jon<br>
</font><br>
<div class="moz-cite-prefix">On 03/22/2016 02:29 AM, Bengt
Rutisson wrote:<br>
</div>
<blockquote cite="mid:56F11061.5030605@oracle.com" type="cite">
<meta content="text/html; charset=utf-8"
http-equiv="Content-Type">
<br>
Hi Jon,<br>
<br>
<div class="moz-cite-prefix">On 2016-03-22 00:05, Jon
Masamitsu wrote:<br>
</div>
<blockquote cite="mid:56F07E31.2000601@oracle.com" type="cite">
<meta content="text/html; charset=utf-8"
http-equiv="Content-Type">
<font face="Times New Roman, Times, serif">Tao,<br>
<br>
I've updated the 01 version. The test has not changed.<br>
Thanks again for catching that.<br>
<br>
Jon<br>
</font><br>
<div class="moz-cite-prefix">On 03/21/2016 03:16 PM, Tao Mao
wrote:<br>
</div>
<blockquote
cite="mid:CANrGW1z1dZuvysUc-HarC7sYZkF+ExRWg4sPzqQMOENBoC4ZaA@mail.gmail.com"
type="cite">
<div dir="ltr">This change has a bug: double counting
get(0); should start with s = 0
<div><br>
</div>
<div>Thanks.</div>
<div>Tao Mao</div>
</div>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Mon, Mar 21, 2016 at 2:55
PM, Jon Masamitsu <span dir="ltr"><<a
moz-do-not-send="true"
class="moz-txt-link-abbreviated"
href="mailto:jon.masamitsu@oracle.com"><a class="moz-txt-link-abbreviated" href="mailto:jon.masamitsu@oracle.com">jon.masamitsu@oracle.com</a></a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> <font
face="Times New Roman, Times, serif">Bengt,<br>
<br>
Thanks for the review.<br>
</font><span class=""><br>
<div>On 03/21/2016 02:13 AM, Bengt Rutisson
wrote:<br>
</div>
<blockquote type="cite"> <br>
Hi Jon, <br>
<br>
On 2016-03-21 03:43, Jon Masamitsu wrote: <br>
<blockquote type="cite">The averages reported
for phase times (for example "Ext Root
Scanning") were <br>
incorrect. Not all the per thread values
were included in the sum and the <br>
average value was incorrect (this with build
9-ea+1100) <br>
<br>
[0.366s][debug][gc,phases ]
GC(2) Ext Root Scanning (ms): Min:
0.3, Avg: 0.2, Max: 0.4, Diff: 0.0, Sum:
0.3 <br>
[0.366s][trace][gc,phases,task ]
GC(2) 0.4
0.3 <br>
<br>
With the fix all values are included in the
sum and the average is correct. <br>
<br>
[2.830s][debug][gc,phases ]
GC(0) Ext Root Scanning (ms): Min:
5.7, Avg: 7.3, Max: 8.9, Diff: 3.1, Sum:
14.6 <br>
[2.830s][trace][gc,phases,task ]
GC(0) 8.9
5.7 <br>
<br>
<a moz-do-not-send="true"
href="https://bugs.openjdk.java.net/browse/JDK-8152208"
target="_blank">https://bugs.openjdk.java.net/browse/JDK-8152208</a>
<br>
<a moz-do-not-send="true"
href="http://cr.openjdk.java.net/%7Ejmasa/8152208/webrev.00/"
target="_blank">http://cr.openjdk.java.net/~jmasa/8152208/webrev.00/</a>
<br>
</blockquote>
<br>
Nice catch! Your change looks good. <br>
<br>
The method WorkerDataArray<T>::sum(uint
active_threads) just above the average()
method has the same issue. Can you fix that
too? <br>
</blockquote>
<br>
</span> Yes, indeed.<br>
<br>
I messed up the delta a bit so all the changes are
in the workerDataArray.inline.hpp<br>
webrev. The test has not changed.<br>
<br>
<a moz-do-not-send="true"
href="http://cr.openjdk.java.net/%7Ejmasa/8152208/webrev.01/"
target="_blank">http://cr.openjdk.java.net/~jmasa/8152208/webrev.01/</a><br>
</div>
</blockquote>
</div>
</div>
</blockquote>
</blockquote>
<br>
The code changes look good. (I realize that the sum()
iteration was actually correct, but I your changes are much
easier to read.)<br>
<br>
The test could be simplified a bit if you use the
shouldMatch() method on the OutputAnalyzer rather than
compiling your own regexps.<br>
<br>
<a moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/file/9037ef388634/test/testlibrary/jdk/test/lib/OutputAnalyzer.java#l224">http://hg.openjdk.java.net/jdk9/hs-rt/hotspot/file/9037ef388634/test/testlibrary/jdk/test/lib/OutputAnalyzer.java#l224</a>
<br>
<br>
You already have an instance of OutputAnalyzer in your test:<br>
<br>
<br>
64 OutputAnalyzer output = new
OutputAnalyzer(pb.start());<br>
<br>
So, this:<br>
<br>
<br>
70 String parallel_phase_leader = "Evacuate
Collection Set: \\d+\\.\\d+ms";<br>
71 String std_out = output.getStdout();<br>
72 Matcher m =
Pattern.compile(parallel_phase_leader,
Pattern.MULTILINE).matcher(std_out);<br>
73 <br>
74 if (!m.find()) {<br>
75 throw new Exception("Could not find correct
output for Evacuate Collection Set: in stdout," +<br>
76 " should match the pattern \"" +
parallel_phase_leader + "\", but stdout is \n" +
output.getStdout());<br>
77 } else {<br>
<br>
Could be replaced by the single line:<br>
<br>
output.shouldMatch("Evacuate Collection Set: \\d+\\.\\d+ms");<br>
<br>
Similarly for the other matching in the test.<br>
<br>
Thanks,<br>
Bengt<br>
<br>
<br>
<blockquote cite="mid:56F07E31.2000601@oracle.com" type="cite">
<blockquote
cite="mid:CANrGW1z1dZuvysUc-HarC7sYZkF+ExRWg4sPzqQMOENBoC4ZaA@mail.gmail.com"
type="cite">
<div class="gmail_extra">
<div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000"> <br>
Jon<br>
<br>
<blockquote type="cite"> <br>
Thanks, <br>
Bengt <br>
<br>
<blockquote type="cite"> <br>
Thanks. <br>
<br>
Jon <br>
</blockquote>
<br>
</blockquote>
<br>
</div>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</blockquote>
<br>
</blockquote>
<br>
</blockquote>
<br>
</blockquote>
<br>
</body>
</html>