11
I'm developing a JNI implementation similar to sun.misc.Unsafe but with extended memory management.
Why are the call times of native methods from sun.misc.Unsafe and from my developed library extremely different?
Some numbers:
sun.misc.Unsafe.getInt(address) takes ~1ns
when my similar method takes ~10ns
Both implementations are quite the same, following the source code of OpenJDK, just returning the variable by pointer. Both are registered in the same manner.
How can I speed up JNI calls? What makes Unsafe performance so special?
Thanks,
Yury/