On Mon, 28 Sep 2026 10:25:55 GMT, Aleksey Shipilev <[email protected]> wrote:

> Maybe that _also_ means we need to obsess about the PCR>1 overheads more, so 
> that more workloads get on the right side of that balance. Although I do not 
> see clearly how to do it.

This indeed looks like a path length issue more than anything. 

Using this one as the canary test:


$ build/linux-x86_64-server-release/images/jdk/bin/java -jar 
renaissance-jmh-0.16.1.jar -f 1 -prof perfasm --jvmArgsAppend 
"-XX:TieredStopAtLevel=3 -XX:+UnlockExperimentalVMOptions 
-XX:ProfileCaptureRatio=4" -wi 0 -i 1 JmhScrabble

# Old shape
   2.03%      0x0000715bec40b3dc:   movabs $0x715ba001b230,%rdi         ;   
{metadata(method data for {method} {0x00000000655a3ac0}
   0.07%      0x0000715bec40b3e6:   mov    0x70(%rdi),%ebx
   2.01%      0x0000715bec40b3e9:   lea    0x2(%rbx),%rbx
   0.08%      0x0000715bec40b3ed:   mov    %ebx,0x70(%rdi)
   0.43%      0x0000715bec40b3f0:   and    $0x1ffffe,%ebx
   0.00%      0x0000715bec40b3f6:   je     0x0000715bec40b4f1
              0x0000715bec40b3fc:   movabs $0x715ba001b230,%rdi         ;   
{metadata(method data for {method} {0x00000000655a3ac0}
              0x0000715bec40b406:   addq   $0x1,0xa8(%rdi)

# New shape
              0x000079c2e040f23b:   movabs $0x79c29401b630,%rdi         ;   
{metadata(method data for {method} {0x00000000175a3ac0}
   0.00%      0x000079c2e040f245:   mov    0x70(%rdi),%ebx
   1.97%      0x000079c2e040f248:   or     %rbx,%rbx
   0.11%      0x000079c2e040f24b:   je     0x000079c2e040f419
   0.00%      0x000079c2e040f251:   cmp    $0x40000000,%r14d
   0.00%      0x000079c2e040f258:   jb     0x000079c2e040f419
              0x000079c2e040f25e:   xor    %ebx,%ebx
   0.01%      0x000079c2e040f260:   crc32  %ebx,%r14d
   0.00%      0x000079c2e040f266:   movabs $0x79c29401b630,%rdi         ;   
{metadata(method data for {method} {0x00000000175a3ac0}
              0x000079c2e040f270:   mov    0xa8(%rdi),%rbx
   2.29%      0x000079c2e040f277:   or     %rbx,%rbx
   0.10%  ╭   0x000079c2e040f27a:   je     0x000079c2e040f289
   0.01%  │   0x000079c2e040f280:   cmp    $0x40000000,%r14d
   0.00%  │╭  0x000079c2e040f287:   jae    0x000079c2e040f291
          ↘│  0x000079c2e040f289:   addq   $0x4,0xa8(%rdi)
   0.47%   ↘  0x000079c2e040f291:   xor    %ebx,%ebx
   0.01%      0x000079c2e040f293:   crc32  %ebx,%r14d

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

PR Comment: https://git.openjdk.org/jdk/pull/28541#issuecomment-5868602726

Reply via email to