pinpoint-apm / pinpoint

APM, (Application Performance Management) tool for large-scale distributed systems.
https://pinpoint-apm.gitbook.io/
Apache License 2.0
13.41k stars 3.75k forks source link

Improved serialization performance of primitive values #10318

Open emeroad opened 1 year ago

emeroad commented 1 year ago

http://minborgsjavapot.blogspot.com/2023/01/java-21-performance-improvements.html https://www.javacodegeeks.com/2023/02/jdk-21-image-performance-improvements.html

https://github.com/minborg/jdk/blob/4bf1a50178e69882b73232cc57a5895eb11692e8/src/java.base/share/classes/jdk/internal/util/ByteArray.java

This approach appears to be possible in java11 as well.

There is an issue that it is slower due to missing vectorization. https://bugs.openjdk.org/browse/JDK-8259398?attachmentOrder=asc

emeroad commented 1 year ago

Expected to be similar to unsafe implementation. https://github.com/apache/hbase/blob/master/hbase-common/src/main/java/org/apache/hadoop/hbase/util/UnsafeAccess.java