RFR(S) 8207765: HeapMonitorIntervalRateTest fails with ZGC
Per Liden
per.liden at oracle.com
Wed Aug 8 13:19:05 UTC 2018
Hi JC,
(Sorry, I didn't see this thread until now... been on vacation, jvmls, etc)
On 07/19/2018 11:52 PM, JC Beyler wrote:
> Hi Serguei,
>
> Done here:
> http://cr.openjdk.java.net/~jcbeyler/8207765/webrev.01/
>
> I added:
>
> + // Calculate the size of a 1-element array in order to assess average
> sampling interval
> + // via the HeapMonitorStatIntervalTest. This is needed because various
> GCs could add
> + // extra memory to arrays.
> + // This is done by allocating a 1-element array and then looking in
> the heap monitoring
> + // samples for the average size of objects collected.
>
>
I was just a bit curious as to what the actual problem was here. While
it's true that a GC might use extra memory for an object, ZGC doesn't do
that. An int[1] in ZGC has the same size as in G1/Parallel/Serial/CMS.
The only exception I can think of is that you where using compressed
class pointers, which is generally enabled by default, but
disabled/unsupported in ZGC. Given this, I'm thinking you should have
seen the same issue with say G1 if you were using
-XX:-UseCompressedClassPointers, no?
cheers,
Per
> Let me know what you think and then I need one more review to prepare
> the patch :-)
>
> Thanks all!
> Jc
>
> On Thu, Jul 19, 2018 at 2:33 PM serguei.spitsyn at oracle.com
> <mailto:serguei.spitsyn at oracle.com> <serguei.spitsyn at oracle.com
> <mailto:serguei.spitsyn at oracle.com>> wrote:
>
> Hi Jc,
>
> The fix looks good to me.
> Just minor comments.
>
> http://cr.openjdk.java.net/%7Ejcbeyler/8207765/webrev.00/test/hotspot/jtreg/serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitor.java.frames.html
>
> 108 public static void calculateAverageOneElementSize() {
>
> Could you, please, add a comment before
> calculateAverageOneElementSize method
> explaining shortly why it is needed and what it is doing?
> Otherwise, it is not easy to understand this code from scratch.
>
> Thanks,
> Serguei
>
>
> On 7/19/18 10:08, JC Beyler wrote:
>> I forgot to put the link:
>> https://bugs.openjdk.java.net/browse/JDK-8207763
>>
>> It got renamed in jdk11 via:
>> http://hg.openjdk.java.net/jdk/jdk11/rev/1edcf36fe15f
>>
>> Thanks!
>> Jc
>>
>> On Thu, Jul 19, 2018 at 10:07 AM JC Beyler <jcbeyler at google.com
>> <mailto:jcbeyler at google.com>> wrote:
>>
>> Hi Dan,
>>
>>
>> serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorStatRateTest.java
>> became
>> serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorStatIntervalTest.java,
>> when we updated the spec and said "rate" was the wrong word.
>>
>> So yes, it fixes both since at some point all branches should
>> see that the StatRate test becomes renamed into the
>> StatInterval test. Does that make sense?
>>
>> Thanks!
>> Jc
>>
>>
>> On Thu, Jul 19, 2018 at 9:45 AM Daniel D. Daugherty
>> <daniel.daugherty at oracle.com
>> <mailto:daniel.daugherty at oracle.com>> wrote:
>>
>> JDK-8207765 covers two different tests as of yesterday:
>>
>> serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorStatRateTest.java
>>
>> and
>>
>> serviceability/jvmti/HeapMonitor/MyPackage/HeapMonitorStatIntervalTest.java
>>
>> I updated it to add a similar failure mode sighting for
>> HeapMonitorStatIntervalTest.java
>>
>>
>> Does your fix address both test failures?
>>
>> Dan
>>
>>
>> On 7/19/18 12:39 PM, JC Beyler wrote:
>>> Hi all,
>>>
>>> Could I have a few reviews of:
>>> http://cr.openjdk.java.net/~jcbeyler/8207765/webrev.00/
>>> <http://cr.openjdk.java.net/%7Ejcbeyler/8207765/webrev.00/>
>>>
>>> The test assumed the size of a 1-element array but ZGC
>>> changes that assumption. The test now first allocates a
>>> bit of memory and gets the average size of the samples
>>> before assuming the size. This works with/without ZGC.
>>>
>>> Webrev:
>>> http://cr.openjdk.java.net/~jcbeyler/8207765/webrev.00/
>>> <http://cr.openjdk.java.net/%7Ejcbeyler/8207765/webrev.00/>
>>> Bug: https://bugs.openjdk.java.net/browse/JDK-8207765
>>>
>>> Thanks!
>>> Jc
>>
>>
>>
>> --
>>
>> Thanks,
>> Jc
>>
>>
>>
>> --
>>
>> Thanks,
>> Jc
>
>
>
> --
>
> Thanks,
> Jc
More information about the serviceability-dev
mailing list