Если не Unsafe, то кто: восход VarHandles
sun.misc.Unsafe уйдёт и МЫ ВСЕ УМРЁМ! В этом докладе мы посмотрим на работы вокруг VarHandles (JEP 193): что там за API, как в крупную клетку устроена референсная реализация, какие новые режимы доступа (acquire/release, opaque/relaxed, compareAndSet/compareAndExchange) она даёт, и как мы умудряемся её скомпилировать в практически голые доступы.
Кроме того, мы посмотрим на то, какой Unsafe плохой, какие грабли нам подкладывают текущие JDK/JVM, какие хардварные проблемы подтачивают красивый гранит реализации. С позитивной стороны мы увидим побочные улучшения в JDK/JVM: оптимизации в ByteBuffers, Atomic*FieldUpdaters, и прочие общие кодогенерационные улучшения.
Работает над производительностью Java около 10 лет. За это время он успел позаниматься Apache Harmony в Intel, затем перешёл в Sun Microsystems, а потом и в Oracle, где сегодня работает над Sun/Oracle JDK, главным образом над изменениями, связанными с производительностью JVM, библиотек классов, фреймворков и приложений. Разрабатывает и поддерживает под-проекты OpenJDK: jmh, jcstress, jol. Работает в экспертных группах, связанных с формализацией, тестированием и производительностью concurrency.
Видео
Все доклады