Soirée JVM Warmup and Pattern Matching

Date et lieu

Les sessions sont filmées et le public est photographié. Les photographies sont ensuite publiées sur le site du Paris JUG et autres médias de l’associations Paris JUG. En acceptant cette invitation, vous autorisez le Paris JUG à publier votre photo sur les médias sus-mentionnés.

Les inscrits à l’évènement non présents 5 minutes avant le début de la session, soit à 19h25, verront leurs places remises à disposition.
Les non inscrits à l’évènement ne pourront donc y assister que sous réserve de places disponibles sur place 5 min avant le début de la session, soit à 19h25.
L’inscription implique de posséder une adresse mail valide sur laquelle vous recevrez une demande de confirmation à laquelle il vous faudra répondre afin de valider votre inscription. Toute inscription non confirmée ne sera pas prise en compte !

Détails

19h00 : Accueil

19h30 : Keeping Your Java Hot by Solving the JVM Warmup Problem

Java bytecodes and class files deliver on the original vision of “write once, run anywhere”. Using a Just-in-Time (JIT) compiler allows JVM-based applications to compile only the code that’s being used frequently and optimise it precisely for how it is being used. Using techniques like speculative optimisation can often deliver better performance than static, Ahead-of-Time (AOT) compiled code.

However, this flexibility and performance comes at a cost. Each time the JVM starts an application, it must perform the same analysis to find hot spots of code and compile them. This is referred to as the application warmup time.

In this session, we’ll look at several approaches to how this problem can be alleviated or even eliminated. Specifically:

  • Static compilation of Java code ahead-of time (AOT). Specifically, the Graal native image approach
  • Generating a JIT compiler profile of a running, warmed-up application that can be reused when the same application is restarted, eliminating the need for much of the JIT compilation.
  • Decoupling the JIT compiler from the JVM for a Cloud environment. Providing a centralised JIT-as-a-Service allows caching of compiled code and offloading the compilation work when new code must be compiled.
  • Creating a checkpoint of a running application. This includes all application state (heap, stack, etc.) in addition to the JIT-compiled code. Project CRaC will be used as an example.

At the end of the session, you’ll be all set to keep your Java hot!

Par Simon Ritter

20h30 : Buffet offert par Mirakl

21h00 : The Art of Java Language Pattern Matching

The goal of project Amber within OpenJDK is to explore the inclusion of smaller, productivity-oriented Java language features. One part of this that has delivered new functionality in recent versions is pattern matching.

Pattern matching combines application code logic to test if an expression has a specific type or structure and extract components of its state for processing. Pattern matching is now well embedded in the Java language using the following features, defined by JDK Enhancement Proposals (JEPs)

  • Pattern matching for instanceof (JEP 433)
  • Pattern matching for switch (JEP 441)
  • Record patterns (JEP 440)
  • Unnamed patterns and variables (JEP 456)
  • Primitive types in patterns, instanceof and switch (JEP 455)

In this session, we’ll look at the details of these new language features and a more general look at pattern matching. We’ll also explore future features in this area such as array patterns, which may be included in a subsequent Java release.

By the end of the session, you’ll be ready to use these powerful new features.

Par Simon Ritter

22h00 : 3ème mi-temps des juggers

Feedback

Sponsors de l'évènement

Platinium

Code de Conduite

Les conférences Paris JUG se veulent des expériences sans harcèlement, quel que soit votre sexe, votre identité sexuelle, votre âge, votre orientation sexuelle, votre handicap, votre apparence physique, votre poids, votre race ou votre religion. Nous ne tolérons aucun harcèlement des participants à la conférence, quel que soit sa forme. Les expressions et les images à connotation sexuelle ne sont pas appropriées lors des événements ou sur les médias en ligne. Les participants à une conférence qui violent ces règles peuvent être sanctionnés, voire exclus de la conférence.