On Mon, 23 Jan 2023 08:11:15 GMT, Per Minborg <pminb...@openjdk.org> wrote:
>> src/java.base/share/classes/jdk/internal/util/access/ByteArrayAccess.java >> line 614: >> >>> 612: /* >>> 613: * Methods for packing primitive values into byte arrays starting >>> at offset zero. >>> 614: */ >> >> Is the only advantage to the zero offset versions in the API, shorter >> invocations with fewer parameters? >> Is there any performance difference? > > Very good question. I will take a look at it. A fixed value is inserted in > the original var handle so potentially it might improve performance that way > too. No significant performance increase: 2-parameters Benchmark Mode Cnt Score Error Units PrimitiveFieldSerializationBenchmark.serializeData avgt 8 6.761 ± 0.126 ns/op PrimitiveFieldSerializationBenchmark.serializeRecord avgt 8 6.890 ± 0.093 ns/op 3-parameters Benchmark Mode Cnt Score Error Units PrimitiveFieldSerializationBenchmark.serializeData avgt 8 6.850 ± 0.074 ns/op PrimitiveFieldSerializationBenchmark.serializeRecord avgt 8 6.855 ± 0.057 ns/op ------------- PR: https://git.openjdk.org/jdk/pull/12076