Я разрабатываю реализацию JNI, аналогичную sun.misc.Unsafe, но с расширенным управлением памятью.
Как объяснить, что время вызова собственных методов из sun.misc.Unsafe и из моей разработанной библиотеки чрезвычайно отличается?
Некоторые номера: sun.misc.Unsafe.getInt(адрес) занимает ~ 1ns когда мой подобный метод принимает ~ 10ns
Обе реализации совершенно одинаковы, следуя исходному коду openJDK, просто верните переменную указателем. Небезопасно в модуле JNI, зарегистрированное таким же образом, как и другое.
Как ускорить вызов JNI? Что делает Unsafe настолько особенным для производительности?
Спасибо, Юрий/