Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Introduction to GraalVM
Search
Alex Xandra Albert Sim
September 25, 2019
Technology
0
160
Introduction to GraalVM
A simple introduction to the GraalVM and its ecosystem
Alex Xandra Albert Sim
September 25, 2019
Tweet
Share
More Decks by Alex Xandra Albert Sim
See All by Alex Xandra Albert Sim
System Operations
bertzzie
0
77
The Future of Working in IT
bertzzie
1
92
Dependency Injection in Spring
bertzzie
0
82
Scala: Lessons Learned from the Battlefield
bertzzie
0
79
Lessons We Learned Through Hell When Scaling Blibli.com
bertzzie
0
240
Building Fintech App in Java: Tips & Trick
bertzzie
0
170
Handling Scale with Reactive Programming
bertzzie
0
120
Scaling Software Architecture: 101 and Best Practices
bertzzie
0
230
Spring Cloud Contract Introduction
bertzzie
0
650
Other Decks in Technology
See All in Technology
Phase09_自動化_仕組み化
overflowinc
0
1.6k
DDD×仕様駆動で回す高品質開発のプロセス設計
littlehands
6
2.4k
The Rise of Browser Automation: AI-Powered Web Interaction in 2026
marcthompson_seo
0
310
Phase12_総括_自走化
overflowinc
0
1.4k
Laravelで学ぶOAuthとOpenID Connectの基礎と実装
kyoshidaxx
4
1.8k
品質を経営にどう語るか #jassttokyo / Communicating the Strategic Value of Quality to Executive Leadership
kyonmm
PRO
3
1.2k
RGBに陥らないために -プロダクトの価値を届けるまで-
righttouch
PRO
0
110
ThetaOS - A Mythical Machine comes Alive
aslander
0
160
FastMCP OAuth Proxy with Cognito
hironobuiga
3
190
ADK + Gemini Enterprise で 外部 API 連携エージェント作るなら OAuth の仕組みを理解しておこう
kaz1437
0
190
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
480
Phase11_戦略的AI経営
overflowinc
0
1.5k
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
390
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.5k
The SEO Collaboration Effect
kristinabergwall1
0
400
Building Applications with DynamoDB
mza
96
7k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
250
A better future with KSS
kneath
240
18k
Embracing the Ebb and Flow
colly
88
5k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Utilizing Notion as your number one productivity tool
mfonobong
4
270
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
Ruling the World: When Life Gets Gamed
codingconduct
0
180
Transcript
GraalVM An Introduction
Disclaimer Presentations are intended for educational purposes only and not
to replace independent professional judgement. The views and opinions expressed in this prsentation do not necessarily reflect the official policy or position of blibli.com. Audience discretion is advised.
What is a VM? an efficient, isolated duplicate of the
real machine Popek, Gerald J.; Goldberg, Robert P. (1974). "Formal requirements for virtualizable third generation architectures" “ “”
Java Virtual Machine Class Loader Runtime Data Area Execution Engine
JNI Native Mehtod Library Java Scala Kotlin Clojure Loads, links, initialize *.class at runtime Store bytecode, runtime data, native stacks Executes bytecode Interaction with native libs
GraalVM GraalVM Tuffle JVM Languages (java, kotlin, etc) JS Ruby
R LLVM bc JVM Node.JS OracleDB Native Program
GraalVM: Performance GraalVM Tuffle JVM Languages (java, kotlin, etc) JS
Ruby R LLVM bc JVM Node.JS OracleDB Native Program
GraalVM: Performance • Better JIT • Fast startup • Lower
footprint • AOT Compiler
GraalVM Performance: Demo
GraalVM: Polyglot GraalVM Tuffle JVM Languages (java, kotlin, etc) JS
Ruby R LLVM bc JVM Node.JS OracleDB Native Program
GraalVM: Polyglot • Pass values between languages • Executes code
from other language(s) • No copying or marshalling
GraalVM Polyglot: How? • Interoperability protocol • Communicates via set
of agreed data types and structure • Details: https://chrisseaton.com/rubytruffle/dls15-interop/dls15- interop.pdf
Polyglot: Demo
GraalVM: Cross Language Tool GraalVM Tuffle JVM Languages (java, kotlin,
etc) JS Ruby R LLVM bc JVM Node.JS OracleDB Native Program
Cross Lang Tools: Demo
Code at: https://github.com/bertzzie/graalvm-example Slides at: https://speakerdeck.com/bertzzie/introduction-to-graalvm QA and Closing