http://cr.openjdk.java.net/~shade/varhandles/unsafe-bench.zip http://cr.openjdk.java.net/~shade/varhandles/unsafe-bench.jar i7-4790K 4.0 GHz, Linux x86_64 === Gets Benchmark Mode Cnt NEW JDK SCORE OLD JDK SCORE Units GetPlain.test_Object avgt 5 2.273 ± 0.004 2.282 ± 0.069 ns/op GetPlain.test_boolean avgt 5 1.913 ± 0.003 1.914 ± 0.003 ns/op GetPlain.test_byte avgt 5 1.914 ± 0.007 1.936 ± 0.045 ns/op GetPlain.test_char avgt 5 1.915 ± 0.004 1.914 ± 0.013 ns/op GetPlain.test_double avgt 5 2.151 ± 0.026 2.149 ± 0.018 ns/op GetPlain.test_float avgt 5 2.148 ± 0.006 2.146 ± 0.008 ns/op GetPlain.test_int avgt 5 1.951 ± 0.013 1.927 ± 0.034 ns/op GetPlain.test_long avgt 5 1.926 ± 0.030 1.920 ± 0.014 ns/op GetPlain.test_short avgt 5 1.916 ± 0.012 1.918 ± 0.016 ns/op GetVolatile.test_Object avgt 5 2.297 ± 0.013 2.268 ± 0.003 ns/op GetVolatile.test_boolean avgt 5 1.915 ± 0.006 1.920 ± 0.008 ns/op GetVolatile.test_byte avgt 5 1.914 ± 0.004 1.917 ± 0.013 ns/op GetVolatile.test_char avgt 5 1.912 ± 0.002 1.933 ± 0.024 ns/op GetVolatile.test_double avgt 5 2.144 ± 0.011 2.151 ± 0.022 ns/op GetVolatile.test_float avgt 5 2.148 ± 0.014 2.148 ± 0.005 ns/op GetVolatile.test_int avgt 5 1.930 ± 0.013 1.934 ± 0.012 ns/op GetVolatile.test_long avgt 5 1.925 ± 0.034 1.931 ± 0.013 ns/op GetVolatile.test_short avgt 5 1.915 ± 0.009 1.915 ± 0.004 ns/op GetAcquire.test_Object avgt 5 2.269 ± 0.003 ns/op GetAcquire.test_boolean avgt 5 1.915 ± 0.018 ns/op GetAcquire.test_byte avgt 5 1.923 ± 0.008 ns/op GetAcquire.test_char avgt 5 1.917 ± 0.009 ns/op GetAcquire.test_double avgt 5 2.144 ± 0.010 ns/op GetAcquire.test_float avgt 5 2.153 ± 0.005 ns/op GetAcquire.test_int avgt 5 1.922 ± 0.002 ns/op GetAcquire.test_long avgt 5 1.924 ± 0.002 ns/op GetAcquire.test_short avgt 5 1.914 ± 0.010 ns/op GetOpaque.test_Object avgt 5 2.273 ± 0.003 ns/op GetOpaque.test_boolean avgt 5 1.913 ± 0.003 ns/op GetOpaque.test_byte avgt 5 1.913 ± 0.006 ns/op GetOpaque.test_char avgt 5 1.933 ± 0.014 ns/op GetOpaque.test_double avgt 5 2.154 ± 0.018 ns/op GetOpaque.test_float avgt 5 2.147 ± 0.020 ns/op GetOpaque.test_int avgt 5 1.923 ± 0.006 ns/op GetOpaque.test_long avgt 5 1.969 ± 0.147 ns/op GetOpaque.test_short avgt 5 1.916 ± 0.004 ns/op === Puts Benchmark Mode Cnt NEW JDK SCORE OLD JDK SCORE Units PutPlain.test_Object avgt 5 0.760 ± 0.020 0.757 ± 0.042 ns/op PutPlain.test_boolean avgt 5 0.321 ± 0.014 0.341 ± 0.031 ns/op PutPlain.test_byte avgt 5 0.365 ± 0.029 0.322 ± 0.011 ns/op PutPlain.test_char avgt 5 0.374 ± 0.110 0.321 ± 0.010 ns/op PutPlain.test_double avgt 5 0.368 ± 0.164 0.344 ± 0.121 ns/op PutPlain.test_float avgt 5 0.330 ± 0.069 0.356 ± 0.043 ns/op PutPlain.test_int avgt 5 0.347 ± 0.093 0.352 ± 0.015 ns/op PutPlain.test_long avgt 5 0.325 ± 0.008 0.392 ± 0.129 ns/op PutPlain.test_short avgt 5 0.334 ± 0.033 0.371 ± 0.093 ns/op PutVolatile.test_Object avgt 5 4.785 ± 0.141 4.759 ± 0.005 ns/op PutVolatile.test_boolean avgt 5 4.757 ± 0.006 4.754 ± 0.008 ns/op PutVolatile.test_byte avgt 5 4.759 ± 0.018 4.754 ± 0.011 ns/op PutVolatile.test_char avgt 5 4.758 ± 0.008 4.753 ± 0.006 ns/op PutVolatile.test_double avgt 5 4.765 ± 0.004 4.766 ± 0.006 ns/op PutVolatile.test_float avgt 5 4.770 ± 0.059 4.760 ± 0.006 ns/op PutVolatile.test_int avgt 5 4.761 ± 0.014 4.755 ± 0.004 ns/op PutVolatile.test_long avgt 5 4.766 ± 0.009 4.796 ± 0.053 ns/op PutVolatile.test_short avgt 5 4.769 ± 0.058 4.770 ± 0.042 ns/op PutOrdered.test_Object avgt 5 0.754 ± 0.008 0.763 ± 0.032 ns/op PutOrdered.test_int avgt 5 0.345 ± 0.025 0.344 ± 0.036 ns/op PutOrdered.test_long avgt 5 0.364 ± 0.053 0.332 ± 0.017 ns/op PutRelease.test_Object avgt 5 0.752 ± 0.004 ns/op PutRelease.test_boolean avgt 5 0.324 ± 0.007 ns/op PutRelease.test_byte avgt 5 0.322 ± 0.017 ns/op PutRelease.test_char avgt 5 0.332 ± 0.038 ns/op PutRelease.test_double avgt 5 0.336 ± 0.031 ns/op PutRelease.test_float avgt 5 0.318 ± 0.014 ns/op PutRelease.test_int avgt 5 0.329 ± 0.022 ns/op PutRelease.test_long avgt 5 0.324 ± 0.021 ns/op PutRelease.test_short avgt 5 0.326 ± 0.020 ns/op PutOpaque.test_Object avgt 5 0.750 ± 0.001 ns/op PutOpaque.test_boolean avgt 5 0.363 ± 0.044 ns/op PutOpaque.test_byte avgt 5 0.413 ± 0.075 ns/op PutOpaque.test_char avgt 5 0.329 ± 0.034 ns/op PutOpaque.test_double avgt 5 0.410 ± 0.064 ns/op PutOpaque.test_float avgt 5 0.325 ± 0.029 ns/op PutOpaque.test_int avgt 5 0.325 ± 0.010 ns/op PutOpaque.test_long avgt 5 0.321 ± 0.038 ns/op PutOpaque.test_short avgt 5 0.371 ± 0.051 ns/op === CompareAndSwaps Benchmark Mode Cnt NEW JDK SCORE OLD JDK SCORE Units CompareAndSwap.test_Object_new_failed avgt 5 8.672 ± 0.203 8.666 ± 0.225 ns/op CompareAndSwap.test_Object_new_success avgt 5 10.616 ± 0.280 10.593 ± 0.283 ns/op CompareAndSwap.test_Object_old_failed avgt 5 8.006 ± 0.012 8.018 ± 0.101 ns/op CompareAndSwap.test_Object_old_success avgt 5 7.765 ± 0.009 7.745 ± 0.392 ns/op CompareAndSwap.test_int_failed avgt 5 7.754 ± 0.006 7.759 ± 0.014 ns/op CompareAndSwap.test_int_success avgt 5 7.808 ± 0.107 7.782 ± 0.045 ns/op CompareAndSwap.test_long_failed avgt 5 7.760 ± 0.013 7.825 ± 0.265 ns/op CompareAndSwap.test_long_success avgt 5 7.759 ± 0.012 7.764 ± 0.008 ns/op WeakCompareAndSwap.test_Object_new_failed avgt 5 8.673 ± 0.252 ns/op WeakCompareAndSwap.test_Object_new_success avgt 5 10.640 ± 0.277 ns/op WeakCompareAndSwap.test_Object_old_failed avgt 5 8.029 ± 0.023 ns/op WeakCompareAndSwap.test_Object_old_success avgt 5 7.776 ± 0.059 ns/op WeakCompareAndSwap.test_int_failed avgt 5 7.786 ± 0.045 ns/op WeakCompareAndSwap.test_int_success avgt 5 7.802 ± 0.092 ns/op WeakCompareAndSwap.test_long_failed avgt 5 7.772 ± 0.018 ns/op WeakCompareAndSwap.test_long_success avgt 5 7.768 ± 0.075 ns/op WeakCompareAndSwapAcquire.test_Object_new_failed avgt 5 8.751 ± 0.265 ns/op WeakCompareAndSwapAcquire.test_Object_new_success avgt 5 10.595 ± 0.291 ns/op WeakCompareAndSwapAcquire.test_Object_old_failed avgt 5 8.132 ± 0.536 ns/op WeakCompareAndSwapAcquire.test_Object_old_success avgt 5 7.809 ± 0.162 ns/op WeakCompareAndSwapAcquire.test_int_failed avgt 5 7.778 ± 0.038 ns/op WeakCompareAndSwapAcquire.test_int_success avgt 5 7.807 ± 0.057 ns/op WeakCompareAndSwapAcquire.test_long_failed avgt 5 7.778 ± 0.038 ns/op WeakCompareAndSwapAcquire.test_long_success avgt 5 7.777 ± 0.054 ns/op WeakCompareAndSwapRelease.test_Object_new_failed avgt 5 8.855 ± 1.178 ns/op WeakCompareAndSwapRelease.test_Object_new_success avgt 5 10.716 ± 0.946 ns/op WeakCompareAndSwapRelease.test_Object_old_failed avgt 5 8.036 ± 0.023 ns/op WeakCompareAndSwapRelease.test_Object_old_success avgt 5 7.775 ± 0.057 ns/op WeakCompareAndSwapRelease.test_int_failed avgt 5 7.777 ± 0.036 ns/op WeakCompareAndSwapRelease.test_int_success avgt 5 7.782 ± 0.059 ns/op WeakCompareAndSwapRelease.test_long_failed avgt 5 7.793 ± 0.175 ns/op WeakCompareAndSwapRelease.test_long_success avgt 5 7.831 ± 0.163 ns/op ==== CompareAndExchanges Benchmark Mode Cnt NEW JDK SCORE Units CompareAndExchangeAcquire.test_Object_new_failed avgt 5 8.678 ± 0.287 ns/op CompareAndExchangeAcquire.test_Object_new_success avgt 5 9.541 ± 0.283 ns/op CompareAndExchangeAcquire.test_Object_old_failed avgt 5 8.007 ± 0.013 ns/op CompareAndExchangeAcquire.test_Object_old_success avgt 5 7.761 ± 0.017 ns/op CompareAndExchangeAcquire.test_int_failed avgt 5 7.777 ± 0.012 ns/op CompareAndExchangeAcquire.test_int_success avgt 5 7.794 ± 0.018 ns/op CompareAndExchangeAcquire.test_long_failed avgt 5 7.766 ± 0.029 ns/op CompareAndExchangeAcquire.test_long_success avgt 5 7.760 ± 0.010 ns/op CompareAndExchangeRelease.test_Object_new_failed avgt 5 8.664 ± 0.247 ns/op CompareAndExchangeRelease.test_Object_new_success avgt 5 9.491 ± 0.369 ns/op CompareAndExchangeRelease.test_Object_old_failed avgt 5 8.034 ± 0.023 ns/op CompareAndExchangeRelease.test_Object_old_success avgt 5 7.759 ± 0.014 ns/op CompareAndExchangeRelease.test_int_failed avgt 5 7.764 ± 0.022 ns/op CompareAndExchangeRelease.test_int_success avgt 5 7.754 ± 0.012 ns/op CompareAndExchangeRelease.test_long_failed avgt 5 7.762 ± 0.031 ns/op CompareAndExchangeRelease.test_long_success avgt 5 7.770 ± 0.010 ns/op CompareAndExchangeVolatile.test_Object_new_failed avgt 5 8.804 ± 1.157 ns/op CompareAndExchangeVolatile.test_Object_new_success avgt 5 9.421 ± 0.265 ns/op CompareAndExchangeVolatile.test_Object_old_failed avgt 5 8.012 ± 0.038 ns/op CompareAndExchangeVolatile.test_Object_old_success avgt 5 7.756 ± 0.008 ns/op CompareAndExchangeVolatile.test_int_failed avgt 5 7.760 ± 0.021 ns/op CompareAndExchangeVolatile.test_int_success avgt 5 7.758 ± 0.013 ns/op CompareAndExchangeVolatile.test_long_failed avgt 5 7.754 ± 0.010 ns/op CompareAndExchangeVolatile.test_long_success avgt 5 7.762 ± 0.026 ns/op ==== GetAndAdds Benchmark Mode Cnt NEW JDK SCORE OLD JDK SCORE Units GetAndAdd.test_int avgt 5 6.507 ± 0.015 6.520 ± 0.092 ns/op GetAndAdd.test_long avgt 5 6.512 ± 0.065 6.504 ± 0.010 ns/op GetAndSet.test_Object avgt 5 6.647 ± 0.759 6.509 ± 0.031 ns/op GetAndSet.test_int avgt 5 6.504 ± 0.009 6.522 ± 0.030 ns/op GetAndSet.test_long avgt 5 6.533 ± 0.104 6.513 ± 0.037 ns/op