RFR: 8278020: ~13% variation in Renaissance-Scrabble [v2]

Thomas Stuefe stuefe at openjdk.java.net
Wed Dec 15 06:33:58 UTC 2021


On Wed, 15 Dec 2021 06:22:29 GMT, Ioi Lam <iklam at openjdk.org> wrote:

> > Hi Ioi,
> > The fix looks fine.
> > this is interesting to me, because in the context of Lilliput ([openjdk/lilliput#13](https://github.com/openjdk/lilliput/pull/13)) I was kind of counting on CDS to intermix Klass and non-class metadata, since that way CDS uses the larger Klass alignment gaps. In fact, I have this wild idea to shape metaspace in that form, merging Klass and non-class metadata into one larger class space. It would be really good to have a better idea of these interactions.
> > What tool did you use to measure the dcache misses?
> > Cheers, Thomas
> 
> Hi Thomas,
> 
> @ericcaspole did the measurements so he will have more information, but I believe he used https://github.com/jvm-profiling-tools/async-profiler to generate traces like this (which I pasted into the bug report):
> 
> ```
>  Column 1: cycles (125424 events)
>  Column 2: l1d_pend_miss.pending_cycles (56716 events)
>  Column 3: CYCLE_ACTIVITY.CYCLES_L2_MISS (66170 events)
> 
>   0.08%   0.02%   0.03%     0x00007f488cda2dc8:  mov  0x10(%r10),%r11d
>  12.26%  16.97%  16.23%     0x00007f488cda2dcc:  lea  0x1b8(%r10,%r11,8),%r11
> ```

Okay, thanks.

> 
> @vnkozlov I found that most Klasses in CDS are preceded by a Method. Does the jitted code write into a Method often?

Method counters? May be worth spreading them out better, or to pad them to prevent false sharing.

-------------

PR: https://git.openjdk.java.net/jdk/pull/6838


More information about the hotspot-dev mailing list