В этом докладе мы посмотрим на две потенциальные фичи в JDK 9, направленные на оптимизацию строк: Compact Strings, сжимающие строки с однобайтовыми символами, и Indify String Concat, использующий магию invokedynamic для конкатенации строк.
Кроме разбора, чем всё это нам грозит, в докладе будут освещены вопросы рациональности, подходов к реализации, практических граблей, с которыми сталкивается разработчик JDK, клюнувший на приманку «Да это ж опенсорс, патчес велком!».
Работает над производительностью Java около 10 лет. За это время он успел позаниматься Apache Harmony в Intel, затем перешёл в Sun Microsystems, а потом и в Oracle, где сегодня работает над Sun/Oracle JDK, главным образом над изменениями, связанными с производительностью JVM, библиотек классов, фреймворков и приложений. Разрабатывает и поддерживает под-проекты OpenJDK: jmh, jcstress, jol. Работает в экспертных группах, связанных с формализацией, тестированием и производительностью concurrency.