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