RFR: 8324124: RISC-V: implement _vectorizedMismatch intrinsic

Yuri Gaevsky duke at openjdk.org
Wed Feb 7 14:48:55 UTC 2024


On Wed, 7 Feb 2024 14:35:55 GMT, Yuri Gaevsky <duke at openjdk.org> wrote:

> Hello All,
> 
> Please review these changes to enable the __vectorizedMismatch_ intrinsic on RISC-V platform with RVV instructions supported.
> 
> Thank you,
> -Yuri Gaevsky
> 
> **Correctness checks:**
>   hotspot/jtreg/compiler/{intrinsic/c1/c2}/ under QEMU-8.1 with RVV v1.0.0 and -XX:TieredStopAtLevel=1/2/3/4.

NB: I have no access to "real" RVV v1.0.0 hardware so to estimate performance improvements
adopted the patch to RVV v0.7.1 ISA [1] under OpenJDK-21 and run the JMH test
org.openjdk.bench.java.util.VectorizedMismatch on LicheePi-4A TH1520 which does support
RVV v.0.7.1.

[1] https://mail.openjdk.org/pipermail/riscv-port-dev/2024-January/001220.html

The results are below.

Legend: UseVMI ==> UseVectorizedMismatchIntrinsic

ArraysMismatch.Byte

-----------------------------------------------------------------------
                                   [-UseVMI]       [+UseVMI]
Benchmark      (size)  Mode  Cnt   Score   Error   Score   Error  Units
mismatchStart       7  avgt   20  26.859 ± 0.051  26.378 ± 0.152  ns/op
mismatchStart       8  avgt   20  26.105 ± 0.043  66.174 ± 0.102  ns/op
mismatchStart       9  avgt   20  26.076 ± 0.031  70.042 ± 0.190  ns/op
mismatchStart      15  avgt   20  26.078 ± 0.043  70.055 ± 0.168  ns/op
mismatchStart      16  avgt   20  26.230 ± 0.040  70.043 ± 0.207  ns/op
mismatchStart      17  avgt   20  25.736 ± 0.075  65.643 ± 0.120  ns/op
mismatchStart      31  avgt   20  25.949 ± 0.072  54.216 ± 0.202  ns/op
mismatchStart      32  avgt   20  26.083 ± 0.060  54.190 ± 0.171  ns/op
mismatchStart      33  avgt   20  26.130 ± 0.082  64.681 ± 0.203  ns/op
mismatchStart      63  avgt   20  25.718 ± 0.030  65.310 ± 0.241  ns/op
mismatchStart      64  avgt   20  26.078 ± 0.042  65.357 ± 0.272  ns/op
mismatchStart      65  avgt   20  26.265 ± 0.039  61.773 ± 0.137  ns/op
mismatchStart     128  avgt   20  26.073 ± 0.040  62.401 ± 0.204  ns/op
mismatchStart     129  avgt   20  26.082 ± 0.038  61.901 ± 0.232  ns/op
mismatchStart     256  avgt   20  26.084 ± 0.061  54.098 ± 0.092  ns/op
mismatchStart     257  avgt   20  25.735 ± 0.040  61.772 ± 0.116  ns/op
mismatchStart     512  avgt   20  26.070 ± 0.036  54.112 ± 0.048  ns/op
mismatchStart     513  avgt   20  26.082 ± 0.035  61.801 ± 0.125  ns/op
mismatchStart    1024  avgt   20  26.097 ± 0.071  62.402 ± 0.173  ns/op
mismatchStart    1025  avgt   20  26.169 ± 0.101  61.972 ± 0.215  ns/op
mismatchStart    2048  avgt   20  26.094 ± 0.046  54.367 ± 0.258  ns/op
mismatchStart    2049  avgt   20  26.081 ± 0.031  62.383 ± 0.129  ns/op
mismatchStart    4096  avgt   20  26.125 ± 0.076  54.114 ± 0.110  ns/op
mismatchStart    4097  avgt   20  26.080 ± 0.047  61.771 ± 0.150  ns/op
mismatchStart    8191  avgt   20  25.723 ± 0.041  62.386 ± 0.084  ns/op
mismatchStart    8192  avgt   20  25.726 ± 0.067  54.094 ± 0.098  ns/op
mismatchStart    8193  avgt   20  25.698 ± 0.039  61.815 ± 0.053  ns/op
-----------------------------------------------------------------------
                                  [-UseVMI]        [+UseVMI]
Benchmark    (size)  Mode  Cnt    Score   Error    Score   Error  Units
mismatchMid       7  avgt   20   27.377 ± 0.018   27.355 ± 0.046  ns/op
mismatchMid       8  avgt   20   26.524 ± 0.159   54.192 ± 0.073  ns/op
mismatchMid       9  avgt   20   26.469 ± 0.065   55.944 ± 6.784  ns/op
mismatchMid      15  avgt   20   26.619 ± 0.053   70.057 ± 0.159  ns/op
mismatchMid      16  avgt   20   27.892 ± 0.064   54.293 ± 0.200  ns/op
mismatchMid      17  avgt   20   27.366 ± 0.072   70.147 ± 0.198  ns/op
mismatchMid      31  avgt   20   28.416 ± 0.126   67.369 ± 0.131  ns/op
mismatchMid      32  avgt   20   27.913 ± 0.068   67.422 ± 0.191  ns/op
mismatchMid      33  avgt   20   27.858 ± 0.046   54.154 ± 0.181  ns/op
mismatchMid      63  avgt   20   31.170 ± 0.060   54.177 ± 0.168  ns/op
mismatchMid      64  avgt   20   31.167 ± 0.085   54.205 ± 0.160  ns/op
mismatchMid      65  avgt   20   31.006 ± 0.132   65.233 ± 0.142  ns/op
mismatchMid     128  avgt   20   34.483 ± 0.086   56.083 ± 7.124  ns/op
mismatchMid     129  avgt   20   34.550 ± 0.183   63.129 ± 0.312  ns/op
mismatchMid     256  avgt   20   43.425 ± 0.058   74.976 ± 0.126  ns/op
mismatchMid     257  avgt   20   43.532 ± 0.069   75.511 ± 0.137  ns/op
mismatchMid     512  avgt   20   87.619 ± 0.109   72.178 ± 0.153  ns/op
mismatchMid     513  avgt   20   87.569 ± 0.102  108.922 ± 0.244  ns/op
mismatchMid    1024  avgt   20  103.914 ± 0.150  132.788 ± 0.165  ns/op
mismatchMid    1025  avgt   20  103.868 ± 0.205  133.023 ± 0.124  ns/op
mismatchMid    2048  avgt   20  179.546 ± 0.198  129.567 ± 0.129  ns/op
mismatchMid    2049  avgt   20  177.637 ± 0.316  174.123 ± 0.115  ns/op
mismatchMid    4096  avgt   20  325.257 ± 0.406  225.116 ± 1.898  ns/op
mismatchMid    4097  avgt   20  323.888 ± 1.284  223.202 ± 1.630  ns/op
mismatchMid    8191  avgt   20  605.531 ± 0.631  349.250 ± 0.769  ns/op
mismatchMid    8192  avgt   20  605.379 ± 0.771  686.644 ± 2.755  ns/op
mismatchMid    8193  avgt   20  599.691 ± 0.801  686.875 ± 0.736  ns/op
---------------------------------------------------------------------------
                                   [-UseVMI]          [+UseVMI]
Benchmark    (size)  Mode  Cnt     Score    Error     Score    Error  Units
mismatchEnd       7  avgt   20    26.817 ±  0.040    26.808 ±  0.038  ns/op
mismatchEnd       8  avgt   20    26.059 ±  0.063    66.319 ±  0.161  ns/op
mismatchEnd       9  avgt   20    26.454 ±  0.035    70.107 ±  0.174  ns/op
mismatchEnd      15  avgt   20    42.827 ±  0.158    54.243 ±  0.138  ns/op
mismatchEnd      16  avgt   20    27.915 ±  0.070    69.997 ±  0.145  ns/op
mismatchEnd      17  avgt   20    27.918 ±  0.049    66.225 ±  0.302  ns/op
mismatchEnd      31  avgt   20    31.742 ±  0.076    67.339 ±  0.215  ns/op
mismatchEnd      32  avgt   20    31.699 ±  0.065    54.122 ±  0.059  ns/op
mismatchEnd      33  avgt   20    31.472 ±  0.078    63.532 ±  0.234  ns/op
mismatchEnd      63  avgt   20    36.950 ±  0.063    65.204 ±  0.254  ns/op
mismatchEnd      64  avgt   20    36.172 ±  0.149    65.120 ±  0.189  ns/op
mismatchEnd      65  avgt   20    36.681 ±  0.124    61.858 ±  0.164  ns/op
mismatchEnd     128  avgt   20    47.459 ±  0.161    54.162 ±  0.141  ns/op
mismatchEnd     129  avgt   20    45.173 ±  0.079    62.455 ±  0.182  ns/op
mismatchEnd     256  avgt   20    84.839 ±  0.137    92.530 ±  0.155  ns/op
mismatchEnd     257  avgt   20    82.749 ±  0.149    81.377 ±  0.267  ns/op
mismatchEnd     512  avgt   20   109.664 ±  2.308   114.271 ±  0.143  ns/op
mismatchEnd     513  avgt   20   115.172 ±  0.264   102.913 ±  0.155  ns/op
mismatchEnd    1024  avgt   20   185.254 ±  0.134   121.601 ±  0.185  ns/op
mismatchEnd    1025  avgt   20   184.594 ±  1.473   121.588 ±  0.357  ns/op
mismatchEnd    2048  avgt   20   330.985 ±  0.662   232.113 ±  0.453  ns/op
mismatchEnd    2049  avgt   20   330.994 ±  0.311   232.701 ±  0.488  ns/op
mismatchEnd    4096  avgt   20   607.884 ±  0.988   349.221 ±  0.947  ns/op
mismatchEnd    4097  avgt   20   608.472 ±  0.844   537.718 ±  7.562  ns/op
mismatchEnd    8191  avgt   20  1172.123 ±  1.283  1329.150 ±  3.545  ns/op
mismatchEnd    8192  avgt   20  1176.383 ±  2.170   644.301 ± 12.636  ns/op
mismatchEnd    8193  avgt   20  1179.004 ± 12.464   937.827 ±  1.341  ns/op

ArraysMismatch.Short

-----------------------------------------------------------------------
                                   [-UseVMI]       [+UseVMI]
Benchmark      (size)  Mode  Cnt   Score   Error   Score   Error  Units
mismatchStart       7  avgt   20  26.504 ± 0.128  68.446 ± 0.125  ns/op
mismatchStart       8  avgt   20  26.463 ± 0.038  52.465 ± 0.092  ns/op
mismatchStart       9  avgt   20  26.459 ± 0.043  64.816 ± 0.301  ns/op
mismatchStart      15  avgt   20  26.488 ± 0.029  65.821 ± 0.166  ns/op
mismatchStart      16  avgt   20  26.420 ± 0.048  53.618 ± 0.142  ns/op
mismatchStart      17  avgt   20  26.432 ± 0.032  62.225 ± 0.249  ns/op
mismatchStart      31  avgt   20  26.438 ± 0.062  63.451 ± 0.197  ns/op
mismatchStart      32  avgt   20  26.455 ± 0.064  63.458 ± 0.101  ns/op
mismatchStart      33  avgt   20  26.409 ± 0.042  60.147 ± 0.066  ns/op
mismatchStart      63  avgt   20  26.464 ± 0.064  60.733 ± 0.210  ns/op
mismatchStart      64  avgt   20  26.442 ± 0.092  60.720 ± 0.112  ns/op
mismatchStart      65  avgt   20  26.475 ± 0.052  61.258 ± 0.080  ns/op
mismatchStart     128  avgt   20  26.455 ± 0.035  52.719 ± 0.191  ns/op
mismatchStart     129  avgt   20  26.464 ± 0.065  60.199 ± 0.147  ns/op
mismatchStart     256  avgt   20  26.437 ± 0.072  60.848 ± 0.237  ns/op
mismatchStart     257  avgt   20  26.428 ± 0.031  60.182 ± 0.110  ns/op
mismatchStart     512  avgt   20  26.438 ± 0.037  60.843 ± 0.134  ns/op
mismatchStart     513  avgt   20  26.426 ± 0.027  60.225 ± 0.203  ns/op
mismatchStart    1024  avgt   20  26.433 ± 0.066  60.811 ± 0.041  ns/op
mismatchStart    1025  avgt   20  26.419 ± 0.048  60.814 ± 0.160  ns/op
mismatchStart    2048  avgt   20  26.454 ± 0.073  60.764 ± 0.114  ns/op
mismatchStart    2049  avgt   20  26.450 ± 0.035  60.340 ± 0.162  ns/op
mismatchStart    4096  avgt   20  26.437 ± 0.035  61.017 ± 0.189  ns/op
mismatchStart    4097  avgt   20  26.439 ± 0.040  60.326 ± 0.140  ns/op
mismatchStart    8191  avgt   20  26.449 ± 0.077  52.491 ± 0.050  ns/op
mismatchStart    8192  avgt   20  26.419 ± 0.027  61.850 ± 0.072  ns/op
mismatchStart    8193  avgt   20  26.413 ± 0.034  62.363 ± 0.207  ns/op
---------------------------------------------------------------------------
                                   [-UseVMI]         [+UseVMI]
Benchmark    (size)  Mode  Cnt     Score    Error     Score    Error  Units
mismatchMid       7  avgt   20    26.508 ±  0.148    52.628 ±  0.117  ns/op
mismatchMid       8  avgt   20    27.388 ±  0.079    52.589 ±  0.050  ns/op
mismatchMid       9  avgt   20    27.353 ±  0.032    69.488 ±  0.182  ns/op
mismatchMid      15  avgt   20    27.905 ±  0.029    66.777 ±  0.183  ns/op
mismatchMid      16  avgt   20    28.019 ±  0.064    52.507 ±  0.091  ns/op
mismatchMid      17  avgt   20    28.020 ±  0.037    65.619 ±  0.154  ns/op
mismatchMid      31  avgt   20    30.644 ±  0.108    52.707 ±  0.204  ns/op
mismatchMid      32  avgt   20    30.859 ±  0.058    63.543 ±  0.205  ns/op
mismatchMid      33  avgt   20    30.917 ±  0.049    53.594 ±  0.093  ns/op
mismatchMid      63  avgt   20    34.269 ±  0.132    52.720 ±  0.180  ns/op
mismatchMid      64  avgt   20    34.455 ±  0.048    52.560 ±  0.153  ns/op
mismatchMid      65  avgt   20    34.484 ±  0.090    52.617 ±  0.281  ns/op
mismatchMid     128  avgt   20    42.681 ±  0.063    61.842 ±  0.170  ns/op
mismatchMid     129  avgt   20    43.251 ±  0.052    61.872 ±  0.139  ns/op
mismatchMid     256  avgt   20    79.509 ±  0.335    92.928 ±  0.254  ns/op
mismatchMid     257  avgt   20    79.866 ±  0.181    92.983 ±  0.143  ns/op
mismatchMid     512  avgt   20   105.535 ±  0.192   131.530 ±  0.439  ns/op
mismatchMid     513  avgt   20   105.529 ±  0.187    89.155 ±  0.191  ns/op
mismatchMid    1024  avgt   20   174.790 ±  0.508   206.822 ±  0.319  ns/op
mismatchMid    1025  avgt   20   177.107 ±  0.214   171.583 ±  0.316  ns/op
mismatchMid    2048  avgt   20   323.895 ±  0.532   222.394 ±  1.406  ns/op
mismatchMid    2049  avgt   20   322.641 ±  0.494   390.688 ±  1.218  ns/op
mismatchMid    4096  avgt   20   604.134 ±  1.767   356.821 ±  0.560  ns/op
mismatchMid    4097  avgt   20   600.134 ±  0.452   356.340 ±  1.026  ns/op
mismatchMid    8191  avgt   20  1300.201 ± 21.257   734.397 ± 24.208  ns/op
mismatchMid    8192  avgt   20  1296.464 ± 15.849   771.202 ± 25.394  ns/op
mismatchMid    8193  avgt   20  1243.546 ± 25.099  1500.175 ± 25.342  ns/op
--------------------------------------------------------------------------
                                   [-UseVMI]         [+UseVMI]
Benchmark    (size)  Mode  Cnt     Score   Error     Score    Error  Units
mismatchEnd       7  avgt   20    26.491 ± 0.100    53.638 ±  0.117  ns/op
mismatchEnd       8  avgt   20    26.411 ± 0.102    68.876 ±  0.182  ns/op
mismatchEnd       9  avgt   20    27.324 ± 0.048    64.359 ±  0.185  ns/op
mismatchEnd      15  avgt   20    28.621 ± 0.040    66.827 ±  0.226  ns/op
mismatchEnd      16  avgt   20    28.433 ± 0.062    52.708 ±  0.153  ns/op
mismatchEnd      17  avgt   20    31.589 ± 0.048    61.956 ±  0.218  ns/op
mismatchEnd      31  avgt   20    35.283 ± 0.099    52.598 ±  0.215  ns/op
mismatchEnd      32  avgt   20    34.474 ± 0.046    53.540 ±  0.079  ns/op
mismatchEnd      33  avgt   20    36.643 ± 0.032    60.249 ±  0.119  ns/op
mismatchEnd      63  avgt   20    42.715 ± 0.062    52.613 ±  0.170  ns/op
mismatchEnd      64  avgt   20    43.235 ± 0.097    60.763 ±  0.077  ns/op
mismatchEnd      65  avgt   20    44.814 ± 0.052    60.245 ±  0.167  ns/op
mismatchEnd     128  avgt   20    83.400 ± 0.255    62.436 ±  0.145  ns/op
mismatchEnd     129  avgt   20    82.695 ± 0.310    79.398 ±  0.159  ns/op
mismatchEnd     256  avgt   20   109.686 ± 0.701    79.760 ±  0.215  ns/op
mismatchEnd     257  avgt   20   106.839 ± 0.214   102.398 ±  0.226  ns/op
mismatchEnd     512  avgt   20   179.041 ± 0.315   194.417 ±  0.306  ns/op
mismatchEnd     513  avgt   20   196.063 ± 1.059   120.285 ±  0.205  ns/op
mismatchEnd    1024  avgt   20   325.552 ± 0.308   228.808 ±  1.533  ns/op
mismatchEnd    1025  avgt   20   338.941 ± 1.940   231.754 ±  0.625  ns/op
mismatchEnd    2048  avgt   20   606.574 ± 0.708   665.116 ±  1.584  ns/op
mismatchEnd    2049  avgt   20   627.944 ± 1.076   499.117 ±  0.689  ns/op
mismatchEnd    4096  avgt   20  1168.854 ± 1.897   646.402 ±  1.469  ns/op
mismatchEnd    4097  avgt   20  1193.711 ± 1.462   946.456 ± 13.655  ns/op
mismatchEnd    8191  avgt   20  2346.392 ± 7.793  1257.871 ± 14.715  ns/op
mismatchEnd    8192  avgt   20  2328.621 ± 5.346  2524.486 ±  6.931  ns/op
mismatchEnd    8193  avgt   20  2332.721 ± 2.013  1832.337 ±  2.021  ns/op

ArraysMismatch.Int

------------------------------------------------------------------------
                                   [-UseVMI]       [+UseVMI]
Benchmark      (size)  Mode  Cnt   Score   Error   Score    Error  Units
mismatchStart       7  avgt   20  27.098 ± 0.067  65.827 ±  0.314  ns/op
mismatchStart       8  avgt   20  27.098 ± 0.050  65.906 ±  0.184  ns/op
mismatchStart       9  avgt   20  27.064 ± 0.034  63.019 ±  0.123  ns/op
mismatchStart      15  avgt   20  27.088 ± 0.063  63.511 ±  0.169  ns/op
mismatchStart      16  avgt   20  27.097 ± 0.092  63.487 ±  0.084  ns/op
mismatchStart      17  avgt   20  27.112 ± 0.084  60.558 ±  0.248  ns/op
mismatchStart      31  avgt   20  27.108 ± 0.110  52.560 ±  0.104  ns/op
mismatchStart      32  avgt   20  27.045 ± 0.036  52.605 ±  0.110  ns/op
mismatchStart      33  avgt   20  27.089 ± 0.067  60.276 ±  0.184  ns/op
mismatchStart      63  avgt   20  27.074 ± 0.039  60.751 ±  0.144  ns/op
mismatchStart      64  avgt   20  27.088 ± 0.031  52.554 ±  0.199  ns/op
mismatchStart      65  avgt   20  27.063 ± 0.040  60.276 ±  0.121  ns/op
mismatchStart     128  avgt   20  27.082 ± 0.054  52.647 ±  0.105  ns/op
mismatchStart     129  avgt   20  27.068 ± 0.053  60.150 ±  0.125  ns/op
mismatchStart     256  avgt   20  27.118 ± 0.147  52.579 ±  0.148  ns/op
mismatchStart     257  avgt   20  27.041 ± 0.037  60.312 ±  0.183  ns/op
mismatchStart     512  avgt   20  27.095 ± 0.054  60.761 ±  0.114  ns/op
mismatchStart     513  avgt   20  27.075 ± 0.040  52.474 ±  0.054  ns/op
mismatchStart    1024  avgt   20  27.112 ± 0.058  52.513 ±  0.086  ns/op
mismatchStart    1025  avgt   20  27.078 ± 0.031  60.225 ±  0.131  ns/op
mismatchStart    2048  avgt   20  26.817 ± 0.026  60.924 ±  0.155  ns/op
mismatchStart    2049  avgt   20  26.809 ± 0.034  60.163 ±  0.071  ns/op
mismatchStart    4096  avgt   20  26.823 ± 0.064  52.599 ±  0.078  ns/op
mismatchStart    4097  avgt   20  26.830 ± 0.076  60.231 ±  0.129  ns/op
mismatchStart    8191  avgt   20  26.801 ± 0.022  60.773 ±  0.093  ns/op
mismatchStart    8192  avgt   20  26.793 ± 0.039  66.196 ± 15.138  ns/op
mismatchStart    8193  avgt   20  26.833 ± 0.050  63.198 ± 11.830  ns/op
---------------------------------------------------------------------------
                                   [-UseVMI]          [+UseVMI]
Benchmark    (size)  Mode  Cnt     Score    Error     Score    Error  Units
mismatchMid       7  avgt   20    27.266 ±  0.060    52.904 ±  0.168  ns/op
mismatchMid       8  avgt   20    28.185 ±  0.042    52.768 ±  0.205  ns/op
mismatchMid       9  avgt   20    28.195 ±  0.061    52.631 ±  0.118  ns/op
mismatchMid      15  avgt   20    29.593 ±  0.045    52.625 ±  0.243  ns/op
mismatchMid      16  avgt   20    29.554 ±  0.062    63.470 ±  0.186  ns/op
mismatchMid      17  avgt   20    29.514 ±  0.041    63.535 ±  0.209  ns/op
mismatchMid      31  avgt   20    34.121 ±  0.106    60.886 ±  0.309  ns/op
mismatchMid      32  avgt   20    34.509 ±  0.070    52.593 ±  0.088  ns/op
mismatchMid      33  avgt   20    34.472 ±  0.041    52.572 ±  0.229  ns/op
mismatchMid      63  avgt   20    43.197 ±  0.186    60.785 ±  0.200  ns/op
mismatchMid      64  avgt   20    43.232 ±  0.085    73.379 ±  0.146  ns/op
mismatchMid      65  avgt   20    43.199 ±  0.050    73.268 ±  0.173  ns/op
mismatchMid     128  avgt   20    79.260 ±  0.182    92.517 ±  0.149  ns/op
mismatchMid     129  avgt   20    79.405 ±  0.067    75.556 ±  0.115  ns/op
mismatchMid     256  avgt   20   105.472 ±  0.223   131.389 ±  0.265  ns/op
mismatchMid     257  avgt   20   105.502 ±  0.148    88.643 ±  0.155  ns/op
mismatchMid     512  avgt   20   178.320 ±  0.222   128.123 ±  0.185  ns/op
mismatchMid     513  avgt   20   174.414 ±  0.256   178.487 ±  0.197  ns/op
mismatchMid    1024  avgt   20   324.065 ±  0.487   432.474 ±  1.475  ns/op
mismatchMid    1025  avgt   20   319.162 ±  0.443   218.608 ±  1.571  ns/op
mismatchMid    2048  avgt   20   604.794 ±  1.826   688.263 ±  0.417  ns/op
mismatchMid    2049  avgt   20   598.749 ±  0.525   690.281 ±  2.480  ns/op
mismatchMid    4096  avgt   20  1303.515 ± 19.864  1396.482 ± 24.848  ns/op
mismatchMid    4097  avgt   20  1236.637 ± 17.324  1450.771 ± 25.739  ns/op
mismatchMid    8191  avgt   20  2567.522 ± 19.046  1452.557 ± 26.459  ns/op
mismatchMid    8192  avgt   20  2556.190 ± 15.588  1475.063 ± 27.504  ns/op
mismatchMid    8193  avgt   20  2668.605 ± 23.387  1421.295 ± 17.188  ns/op
---------------------------------------------------------------------------
                                       [-UseVMI]          [+UseVMI]
Benchmark    (size)  Mode  Cnt     Score    Error     Score    Error  Units
mismatchEnd       7  avgt   20    27.094 ±  0.057    52.601 ±  0.150  ns/op
mismatchEnd       8  avgt   20    27.150 ±  0.045    65.669 ±  0.095  ns/op
mismatchEnd       9  avgt   20    28.051 ±  0.104    63.044 ±  0.136  ns/op
mismatchEnd      15  avgt   20    31.719 ±  0.051    52.593 ±  0.146  ns/op
mismatchEnd      16  avgt   20    32.267 ±  0.051    52.622 ±  0.120  ns/op
mismatchEnd      17  avgt   20    33.920 ±  0.019    60.419 ±  0.207  ns/op
mismatchEnd      31  avgt   20    40.028 ±  0.168    60.743 ±  0.112  ns/op
mismatchEnd      32  avgt   20    41.077 ±  0.075    52.575 ±  0.129  ns/op
mismatchEnd      33  avgt   20    42.113 ±  0.076    61.258 ±  0.052  ns/op
mismatchEnd      63  avgt   20    77.585 ±  0.128    89.401 ±  0.126  ns/op
mismatchEnd      64  avgt   20    77.721 ±  0.089    86.435 ±  0.231  ns/op
mismatchEnd      65  avgt   20    80.621 ±  0.315    77.725 ±  0.150  ns/op
mismatchEnd     128  avgt   20   102.283 ±  0.274    79.531 ±  0.230  ns/op
mismatchEnd     129  avgt   20   104.539 ±  0.262   101.622 ±  0.222  ns/op
mismatchEnd     256  avgt   20   182.748 ±  2.517   120.635 ±  0.456  ns/op
mismatchEnd     257  avgt   20   178.289 ±  0.478   115.772 ±  0.256  ns/op
mismatchEnd     512  avgt   20   318.475 ±  0.442   227.350 ±  0.531  ns/op
mismatchEnd     513  avgt   20   325.110 ±  1.248   378.399 ±  0.961  ns/op
mismatchEnd    1024  avgt   20   609.902 ±  2.539   665.156 ±  2.408  ns/op
mismatchEnd    1025  avgt   20   607.581 ±  1.160   498.861 ±  0.685  ns/op
mismatchEnd    2048  avgt   20  1175.314 ±  3.483  1285.923 ±  1.967  ns/op
mismatchEnd    2049  avgt   20  1175.812 ±  2.733   941.132 ±  0.955  ns/op
mismatchEnd    4096  avgt   20  2317.976 ±  7.545  2618.651 ± 25.386  ns/op
mismatchEnd    4097  avgt   20  2403.044 ± 10.723  1843.361 ± 20.513  ns/op
mismatchEnd    8191  avgt   20  5304.666 ± 24.810  3067.622 ±  9.863  ns/op
mismatchEnd    8192  avgt   20  5343.027 ± 15.349  3039.747 ± 26.420  ns/op
mismatchEnd    8193  avgt   20  5308.661 ± 28.187  4410.391 ± 69.160  ns/op

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

PR Comment: https://git.openjdk.org/jdk/pull/17750#issuecomment-1932197818
PR Comment: https://git.openjdk.org/jdk/pull/17750#issuecomment-1932198358
PR Comment: https://git.openjdk.org/jdk/pull/17750#issuecomment-1932199716
PR Comment: https://git.openjdk.org/jdk/pull/17750#issuecomment-1932201386


More information about the hotspot-dev mailing list