Workshop: GraalVM (part 1)

День 1 /  / Зал 4  /  EN /

In this workshop, the founder and the current lead of the GraalVM project will show you the capabilities of GraalVM. Learn the best practices and the most effective way to get started using GraalVM with your JVM applications. This is also a perfect opportunity to ask technical questions and learn the details of the project from them!

GraalVM offers two ways to run Java applications, with the most effective just-in-time (JIT) compiler or ahead-of-time compiler (AOT) using GraalVM native-image a Java application to deliver a single native executable that is comparable in size and performance to C++. Develop a sample application run with the JIT and measure the impact of the GraalVM JIT. Configure the same app to use GraalVM native-image to see the benefits of a single highly tuned executable. Learn how to tweak the native-image for specific environmental constraints and optimize it with an adaptive GC and profile-guided optimizations. We will profile and look at the performance of both the JIT and AOT versions of the application and learn to choose the most appropriate method for your application. But wait, there's more. With GrallVM polyglot features add the capability to run JavaScript or Python inside the same application to tap into those excellent ecosystems for Machine Learning and other cool use-cases.

Для участия в воркшопе вам заранее понадобится установить:

  • GraalVM 20.3.0 (лучше Enterprise — будет проще следить за воркшопом, какие-то задания используют enterprise способности):
    • Native image;
    • Ruby;
    • Python;
  • Maven, Gradle.
  • SDKMAN (если что-то забыто, то обычно там есть, например, Micronaut).
  • Docker/docker-compose для экспериментов.
  • linux-ish environment: MacOS, Windows WLS, Docker.
  • System requirements (больше — лучше):
    • 64bit OS;
    • 16GB (можно 8, но больше лучше);
    • 3-4 CPU.

Скачать презентацию

Почему этот доклад в программе

Чем хорош спикер: Томас — автор GraalVM-компилятора, основатель проекта и его лидер. Кто, как не Томас, может объяснить особенности GraalVM? Олег, пожалуй, рассказывает про GraalVM больше всех. Он знает, какие практические вопросы возникают при знакомстве с GraalVM, и умеет объяснить их лучше всех.

Чем хороша тема: GraalVM — один из самых интересных проектов в экосистеме, которая может повлиять практически на все проекты: от улучшения производительности и популяризации АОТ-компиляции до открытия экосистем других языков программирования. Каждый должен знать хотя бы базовые вещи про GraalVM. Будет воркшоп, где участники могут потрогать GraalVM сами и задать вопросы людям из команды GraalVM. Это возможность, которую не стоит игнорировать.

Кому будет полезно: Воркшоп, позволяющий попробовать GraalVM и понять, как его можно применить на своих проектах, полезен всем! Если вы не знаете про GraalVM, это будет отличное введение. Если вы что-то читали и пробовали, то сможете увидеть и спросить про best practices и применение этого рантайма. Если вы уже пользуетесь, то это отличная возможность поговорить с Томасом и узнать текущий статус и планы развития проекта.

Почему здесь и сейчас: Конечно, можно всегда отложить GraalVM на потом. Но сэкономить на расходах на облако можно уже сейчас — в это тяжелое время наверняка пригодится.

Спикер(ы)

Thomas Wuerthinger
Oracle

Thomas Wuerthinger is a Senior Research Director at Oracle Labs leading programming language implementation teams for languages including Java, JavaScript, Ruby, and R. He is the architect of the GraalVM compiler and the Truffle self-optimizing runtime system. Previously, he worked on the Crankshaft optimizing compiler of V8 at Google, and the Maxine research virtual machine at Sun Microsystems. He received a PhD degree from JKU Linz for his research about dynamic code evolution.

Oleg Šelajev
Oracle

Oleg Šelajev is a developer advocate for the GraalVM project at Oracle Labs, which aims to make programs run faster and developers more productive. He helps to organize VirtualJUG, the online Java User Group, and a GDG chapter in Tartu, Estonia. Became a Java Champion in 2017. Loves pizza and playing chess. Favorite languages: Java, JavaScript, and Clojure.

Приглашенные Эксперты

Тимур Насрединов
Одноклассники

Java-разработчик с 15+ годами в ИТ, страдающий синдромом самозванца. В настоящее время работает на Одноклассники. Профессиональный опыт включает в себя работу на аутсорс, фриланс, а также разработку на такие индустрии, как медицинская, финансовая, банковская и социальные сети. Принимает участие в образовательных проектах Политеха в качестве репетитора. Интересуется внутренним устройством JVM, распределенным кэшированием, высокопроизводительными системами и настройками параллелизма.