:: Enseignements :: Master :: M2 :: 2025-2026 :: Virtual Runtime Environment (and stuff around ...) ::
[LOGO]

All you wanted to know about Runtimes


Presentations
  1. (AOT) Ahead-of-Time Class Loading & Linking (JEP 483)
    Demo et explications en utilisant Spring Pet Clinic
  2. (AOT) Ahead-of-Time Method Profiling (JEP 515)
    Comment cela marche (attention la JEP 483 est déjà couverte par un autre groupe).
  3. (AOT+GC) Ahead-of-Time Object Caching with Any GC (JEP 516)
    Comment cela marche (attention la JEP 483 est déjà couverte par un autre groupe).
  4. (GC) Generationnal ZGC
    Comment cela marche et différence entre la barière en lecture sur intel x64 et ARM Aarch64.
  5. (GC) G1 GC: Improve Throughput by Reducing Synchronization (JEP 522)
    Ancien mode de fonctionnement vs nouveau au niveau du Card Marking.
  6. (GC) ParallelGC Collector
    Comment cela marche et différence avec G1GC ?
    (GC) Dissecting the CPU-Memory Relationship in Garbage Collection
    Mésurer l'impact des GCs sur les CPUs en prenant comme exemple PetClinic et comme garbage collector G1GC et ZGC.
  7. (Runtime) Compact Object Header (aka Liliput 1)
    Visualiser les changements si activer sur PetClinic (mémoire utilisée, temps CPUs, etc).
    https://openjdk.org/jeps/450
  8. (Runtime) Liliput 2
    Changement entre Liliput 1 et Liliput 2 (un groupe fait déjà Liliput 1), attention, les informations sont explosées un peut partout !
    Liliput Mailing list
  9. (Runtime) Speculative optimization in WebAssembly in V8
    Expliquer comment cela marche et en pratique, utiliser Figma comme exemple.
    https://www.figma.com/blog/webassembly-cut-figmas-load-time-by-3x/
  10. Faster JavaScript Startup with Explicit Compile Hints
    Mesurer sur votre appli JavaScript préférée (Projet ?)
  11. (API) Memory/Span in .Net vs MemorySegment in Java
    Faire le parallèle avec l'API des MemorySegment de Java sur de petits exemples simples, mesurer avec BenchmarkDotNet et JMH (sous Linux).
  12. (Runtime) Leaving the Sea of Nodes
    Comprendre le sea of nodes (https://en.wikipedia.org/wiki/Sea_of_nodes), et expliquer avec vos illustrations, pourquoi turbofan a été ré-ecrit et comment cela marche maintenant ?
  13. Inline Caching in V8
    Expliquer comment cela marche, avec des illustrations.
  14. (Runtime) Maglev vs Turbofan en 2026
    Prendre les benchmarks JetStream et Speedometer et mesurer les différences entre V8 avec Maglev uniquement et V8 avec turbofan uniquemement, et V8 avec les deux (config de base).
  15. Valhalla OpenJDK project
    JEP 401
    Utiliser https://jdk.java.net/valhalla/ pour faire une démo et JMH (avec --enable-preview) pour tester la différence de performance (sur la pile/scalarization)


Documentation