- Meetup
- Location
JUG — Java User Group, встречи JUG.EKB — это обсуждение различных технологий из мира Java, обмен опытом, а также просто интересное общение!
Седьмая встреча JUG.EKB пройдет 22 сентября в Коворгинге "Соль" (переулок Химиков, 3, 4 этаж) , начало в 19-30.
Официальная часть планируется на 3 часа, за это время мы успеем прослушать 2 доклада, задать все интересующие вопросы, а также обсудить подробности с докладчиками в кулуарах и на афтепати.
Программа встречи:
1. Руслан Черемин, Deutsche bank с докладом “Escape Analysis и скаляризация”.
В высокопроизводительных приложениях аллокация нередко становится одним из узких мест — если не непосредственно, то через увеличение нагрузки на GC. Написание же garbage-less кода в джаве требует нетривиальных усилий, код становится сложнее и менее понятным. Современные JIT-ы умеют, в некоторых случаях, самостоятельно стирать аллокации короткоживущих объектов, превращая их поля в набор эквивалентных локальных переменных. Эта оптимизация (скаляризация) появилась еще в версии 1.6, и с тех пор прошло уже 7 лет, но в открытых источниках удивительно мало деталей — где и когда эта оптимизация срабатывает, а где не срабатывает, насколько надежно она работает, и что может ей помешать.
"Доклад построен вокруг набора практических примеров, на которых, как на кошках, я изучал сильные и слабые стороны текущей реализации. В итоге, я надеюсь, у вас в репертуаре появится альтернативный способ создания garbage-less кода, не за счет ручного устранения аллокаций, а за счет использования более JIT-friendly аллокаций".
2. Дмитрий Чуйко, Oracle с докладом "Ahead of time компиляция для Hotspot"
Существуют различные реализации Java. В некотрых из них есть ahead-of-time (AOT) компиляторы, причём подход к решению различный, да и постановка задачи разная. В Hotspot есть JIT‑компиляция, но нет стандартного AOT. Не обязательно, что так будет всегда. Мы поговорим о том, зачем может понадобится заранее получать нативный код, как это делается и работает в реализации для Hotspot. И с другой стороны, как Java-код может встраиваться в процесс JIT‑компиляции.
3. Afterparty