RFR: 8353500: [s390x] Intrinsify Unsafe::setMemory
Amit Kumar
amitkumar at openjdk.org
Mon Apr 7 11:55:48 UTC 2025
On Mon, 7 Apr 2025 08:44:07 GMT, Amit Kumar <amitkumar at openjdk.org> wrote:
> Unsafe::setMemory intrinsic implementation for s390x.
>
> Will update benchmark:
with patch:
with the patch:
Benchmark (aligned) (size) Mode Cnt Score Error Units
MemorySegmentZeroUnsafe.panama true 1 avgt 30 2.351 ± 0.015 ns/op
MemorySegmentZeroUnsafe.panama true 2 avgt 30 2.655 ± 0.020 ns/op
MemorySegmentZeroUnsafe.panama true 3 avgt 30 2.614 ± 0.004 ns/op
MemorySegmentZeroUnsafe.panama true 4 avgt 30 2.783 ± 0.007 ns/op
MemorySegmentZeroUnsafe.panama true 5 avgt 30 2.760 ± 0.014 ns/op
MemorySegmentZeroUnsafe.panama true 6 avgt 30 2.891 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama true 7 avgt 30 2.697 ± 0.003 ns/op
MemorySegmentZeroUnsafe.panama true 8 avgt 30 2.769 ± 0.007 ns/op
MemorySegmentZeroUnsafe.panama true 15 avgt 30 3.689 ± 0.016 ns/op
MemorySegmentZeroUnsafe.panama true 16 avgt 30 3.127 ± 0.009 ns/op
MemorySegmentZeroUnsafe.panama true 63 avgt 30 15.900 ± 0.046 ns/op
MemorySegmentZeroUnsafe.panama true 64 avgt 30 4.140 ± 0.057 ns/op
MemorySegmentZeroUnsafe.panama true 255 avgt 30 53.748 ± 0.872 ns/op
MemorySegmentZeroUnsafe.panama true 256 avgt 30 9.245 ± 0.013 ns/op
MemorySegmentZeroUnsafe.panama false 1 avgt 30 2.346 ± 0.020 ns/op
MemorySegmentZeroUnsafe.panama false 2 avgt 30 2.647 ± 0.005 ns/op
MemorySegmentZeroUnsafe.panama false 3 avgt 30 2.617 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama false 4 avgt 30 2.786 ± 0.008 ns/op
MemorySegmentZeroUnsafe.panama false 5 avgt 30 2.755 ± 0.004 ns/op
MemorySegmentZeroUnsafe.panama false 6 avgt 30 2.892 ± 0.005 ns/op
MemorySegmentZeroUnsafe.panama false 7 avgt 30 2.699 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama false 8 avgt 30 2.765 ± 0.004 ns/op
MemorySegmentZeroUnsafe.panama false 15 avgt 30 3.691 ± 0.015 ns/op
MemorySegmentZeroUnsafe.panama false 16 avgt 30 3.175 ± 0.053 ns/op
MemorySegmentZeroUnsafe.panama false 63 avgt 30 15.892 ± 0.028 ns/op
MemorySegmentZeroUnsafe.panama false 64 avgt 30 15.122 ± 0.347 ns/op
MemorySegmentZeroUnsafe.panama false 255 avgt 30 53.588 ± 0.315 ns/op
MemorySegmentZeroUnsafe.panama false 256 avgt 30 52.775 ± 0.169 ns/op
MemorySegmentZeroUnsafe.unsafe true 1 avgt 30 2.333 ± 0.216 ns/op
MemorySegmentZeroUnsafe.unsafe true 2 avgt 30 1.878 ± 0.092 ns/op
MemorySegmentZeroUnsafe.unsafe true 3 avgt 30 2.301 ± 0.011 ns/op
MemorySegmentZeroUnsafe.unsafe true 4 avgt 30 2.400 ± 0.201 ns/op
MemorySegmentZeroUnsafe.unsafe true 5 avgt 30 2.666 ± 0.052 ns/op
MemorySegmentZeroUnsafe.unsafe true 6 avgt 30 2.209 ± 0.084 ns/op
MemorySegmentZeroUnsafe.unsafe true 7 avgt 30 3.086 ± 0.009 ns/op
MemorySegmentZeroUnsafe.unsafe true 8 avgt 30 2.294 ± 0.217 ns/op
MemorySegmentZeroUnsafe.unsafe true 15 avgt 30 4.631 ± 0.013 ns/op
MemorySegmentZeroUnsafe.unsafe true 16 avgt 30 2.164 ± 0.124 ns/op
MemorySegmentZeroUnsafe.unsafe true 63 avgt 30 13.959 ± 0.042 ns/op
MemorySegmentZeroUnsafe.unsafe true 64 avgt 30 3.078 ± 0.211 ns/op
MemorySegmentZeroUnsafe.unsafe true 255 avgt 30 51.435 ± 0.712 ns/op
MemorySegmentZeroUnsafe.unsafe true 256 avgt 30 7.879 ± 0.140 ns/op
MemorySegmentZeroUnsafe.unsafe false 1 avgt 30 2.486 ± 0.169 ns/op
MemorySegmentZeroUnsafe.unsafe false 2 avgt 30 2.163 ± 0.065 ns/op
MemorySegmentZeroUnsafe.unsafe false 3 avgt 30 2.307 ± 0.011 ns/op
MemorySegmentZeroUnsafe.unsafe false 4 avgt 30 2.489 ± 0.121 ns/op
MemorySegmentZeroUnsafe.unsafe false 5 avgt 30 2.653 ± 0.025 ns/op
MemorySegmentZeroUnsafe.unsafe false 6 avgt 30 2.830 ± 0.161 ns/op
MemorySegmentZeroUnsafe.unsafe false 7 avgt 30 3.086 ± 0.008 ns/op
MemorySegmentZeroUnsafe.unsafe false 8 avgt 30 3.124 ± 0.189 ns/op
MemorySegmentZeroUnsafe.unsafe false 15 avgt 30 4.634 ± 0.015 ns/op
MemorySegmentZeroUnsafe.unsafe false 16 avgt 30 4.552 ± 0.194 ns/op
MemorySegmentZeroUnsafe.unsafe false 63 avgt 30 13.977 ± 0.031 ns/op
MemorySegmentZeroUnsafe.unsafe false 64 avgt 30 14.310 ± 0.177 ns/op
MemorySegmentZeroUnsafe.unsafe false 255 avgt 30 52.244 ± 1.414 ns/op
MemorySegmentZeroUnsafe.unsafe false 256 avgt 30 53.824 ± 0.580 ns/op
Finished running test 'micro:java.lang.foreign.MemorySegmentZeroUnsafe'
without patch:
Benchmark (aligned) (size) Mode Cnt Score Error Units
MemorySegmentZeroUnsafe.panama true 1 avgt 30 2.368 ± 0.029 ns/op
MemorySegmentZeroUnsafe.panama true 2 avgt 30 2.647 ± 0.003 ns/op
MemorySegmentZeroUnsafe.panama true 3 avgt 30 2.615 ± 0.007 ns/op
MemorySegmentZeroUnsafe.panama true 4 avgt 30 2.782 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama true 5 avgt 30 2.760 ± 0.014 ns/op
MemorySegmentZeroUnsafe.panama true 6 avgt 30 2.889 ± 0.003 ns/op
MemorySegmentZeroUnsafe.panama true 7 avgt 30 2.702 ± 0.017 ns/op
MemorySegmentZeroUnsafe.panama true 8 avgt 30 2.766 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama true 15 avgt 30 3.748 ± 0.045 ns/op
MemorySegmentZeroUnsafe.panama true 16 avgt 30 3.122 ± 0.007 ns/op
MemorySegmentZeroUnsafe.panama true 63 avgt 30 24.901 ± 0.106 ns/op
MemorySegmentZeroUnsafe.panama true 64 avgt 30 20.841 ± 0.154 ns/op
MemorySegmentZeroUnsafe.panama true 255 avgt 30 24.498 ± 0.233 ns/op
MemorySegmentZeroUnsafe.panama true 256 avgt 30 24.290 ± 0.050 ns/op
MemorySegmentZeroUnsafe.panama false 1 avgt 30 2.345 ± 0.012 ns/op
MemorySegmentZeroUnsafe.panama false 2 avgt 30 2.648 ± 0.004 ns/op
MemorySegmentZeroUnsafe.panama false 3 avgt 30 2.619 ± 0.008 ns/op
MemorySegmentZeroUnsafe.panama false 4 avgt 30 2.784 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama false 5 avgt 30 2.756 ± 0.004 ns/op
MemorySegmentZeroUnsafe.panama false 6 avgt 30 2.892 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama false 7 avgt 30 2.702 ± 0.011 ns/op
MemorySegmentZeroUnsafe.panama false 8 avgt 30 2.765 ± 0.004 ns/op
MemorySegmentZeroUnsafe.panama false 15 avgt 30 3.702 ± 0.006 ns/op
MemorySegmentZeroUnsafe.panama false 16 avgt 30 3.121 ± 0.010 ns/op
MemorySegmentZeroUnsafe.panama false 63 avgt 30 25.130 ± 0.058 ns/op
MemorySegmentZeroUnsafe.panama false 64 avgt 30 24.891 ± 0.128 ns/op
MemorySegmentZeroUnsafe.panama false 255 avgt 30 24.385 ± 0.061 ns/op
MemorySegmentZeroUnsafe.panama false 256 avgt 30 24.444 ± 0.076 ns/op
MemorySegmentZeroUnsafe.unsafe true 1 avgt 30 19.611 ± 0.495 ns/op
MemorySegmentZeroUnsafe.unsafe true 2 avgt 30 18.797 ± 0.126 ns/op
MemorySegmentZeroUnsafe.unsafe true 3 avgt 30 22.808 ± 0.075 ns/op
MemorySegmentZeroUnsafe.unsafe true 4 avgt 30 18.797 ± 0.047 ns/op
MemorySegmentZeroUnsafe.unsafe true 5 avgt 30 22.934 ± 0.114 ns/op
MemorySegmentZeroUnsafe.unsafe true 6 avgt 30 19.580 ± 0.061 ns/op
MemorySegmentZeroUnsafe.unsafe true 7 avgt 30 22.798 ± 0.063 ns/op
MemorySegmentZeroUnsafe.unsafe true 8 avgt 30 18.029 ± 0.689 ns/op
MemorySegmentZeroUnsafe.unsafe true 15 avgt 30 22.736 ± 0.034 ns/op
MemorySegmentZeroUnsafe.unsafe true 16 avgt 30 17.799 ± 0.276 ns/op
MemorySegmentZeroUnsafe.unsafe true 63 avgt 30 22.777 ± 0.033 ns/op
MemorySegmentZeroUnsafe.unsafe true 64 avgt 30 19.271 ± 0.017 ns/op
MemorySegmentZeroUnsafe.unsafe true 255 avgt 30 22.758 ± 0.068 ns/op
MemorySegmentZeroUnsafe.unsafe true 256 avgt 30 22.752 ± 0.057 ns/op
MemorySegmentZeroUnsafe.unsafe false 1 avgt 30 19.115 ± 0.069 ns/op
MemorySegmentZeroUnsafe.unsafe false 2 avgt 30 22.795 ± 0.067 ns/op
MemorySegmentZeroUnsafe.unsafe false 3 avgt 30 22.754 ± 0.057 ns/op
MemorySegmentZeroUnsafe.unsafe false 4 avgt 30 22.797 ± 0.064 ns/op
MemorySegmentZeroUnsafe.unsafe false 5 avgt 30 22.803 ± 0.078 ns/op
MemorySegmentZeroUnsafe.unsafe false 6 avgt 30 22.738 ± 0.044 ns/op
MemorySegmentZeroUnsafe.unsafe false 7 avgt 30 22.815 ± 0.074 ns/op
MemorySegmentZeroUnsafe.unsafe false 8 avgt 30 22.732 ± 0.026 ns/op
MemorySegmentZeroUnsafe.unsafe false 15 avgt 30 22.754 ± 0.063 ns/op
MemorySegmentZeroUnsafe.unsafe false 16 avgt 30 22.743 ± 0.042 ns/op
MemorySegmentZeroUnsafe.unsafe false 63 avgt 30 23.250 ± 1.193 ns/op
MemorySegmentZeroUnsafe.unsafe false 64 avgt 30 22.838 ± 0.182 ns/op
MemorySegmentZeroUnsafe.unsafe false 255 avgt 30 22.748 ± 0.033 ns/op
MemorySegmentZeroUnsafe.unsafe false 256 avgt 30 22.740 ± 0.039 ns/op
Finished running test 'micro:java.lang.foreign.MemorySegmentZeroUnsafe'
-------------
PR Comment: https://git.openjdk.org/jdk/pull/24480#issuecomment-2783067395
More information about the hotspot-compiler-dev
mailing list