Obvykle říkám, že GraalVM EE může být tak o 10% rychlejší než CE.
Twitter přiznává, že díky GraalVM CE ušetří 11% oproti klasické JVM. Kdyby Twitter používal GraalVM EE, tak by byl určitě alespoň o 20% rychlejší než klasická JVM.
Nepletu-li se, tak hlavním rozdílem je inlinování. EE dokáže inlinovat lépe. Kromě toho se EE pro dynamické jazyky (JavaScript, Ruby, Python) liší ve správě paměti. Například pro interpretry LLVM jazyků chce EE nabízet bezpečný mód, kde nebude možno adresovat mimo alokované bloky.
Tento údaj mi v článku scházel. Protože testovat na jednom benchmarku je zavádějící a trochu to budí dojem že byl vybrán tak, aby bylo to zrychlení co nejbombastičtější :-) Schází mi tam představa, jak se pod GraalVM zrychlí běžný java projekt, resp. jaké bude mít běhové charakteristiky v porovnání s běžnou VM (paměť, cpu, doba spuštění, zahřátí jit). Pak mi tam schází porovnání s jinými metodami polyglotního programování - i bez GraalVM můžu přeci psát aplikaci ve více jazycích a chtěl bych mít představu, jaké je režie jednotlivých postupů v porovnání s GrallVM. Ohledně kompilace do nativního kódu mi tam schází představa o omezeních, které ta kompilace má (reflexe). Část o llvm budí dojem, že bych mohl libovolný kód llvm bitkód přiložit k vlastnímu java projektu a bude fungovat všude, což ale asi neplatí? Že je článek svého druhu PR mi nevadí, ale pokud to má být přesvědčivé, tak bych přidal trochu na akademické důkladnosti a nezávislosti.
Spousta otázek - chtělo by to seriál, klidně i ve formě polemiky od více autorů :-D To by mohlo být dost zajímavé.
Každopádně i kdyby GraalVM přinesl v praxi relativně malé zrychlení (uvádíte 10% až 20%), tak má potenciál mít dopad na celý ekosystém okolo, což je IMHO to nejdůležitější.