~/talk

Project Sulong: an LLVM bitcode interpreter on the Graal VM

slides:none on file

Project Sulong runs LLVM IR on the Graal VM via Truffle and the Graal compiler, interpreting LLVM bitcode interpreter and compiling hot functions to machine code; native allocations live on the native heap via the Unsafe API but calling C from JavaScript yields microbenchmarks ~10 ms native vs ~50 ms JavaScript and the combined JS+C path approaches native. Existing Ruby C extensions and OpenSSL run and a pixel-bench shows three times faster than MRI due to cross-language inlining. Work-in-progress adds Java-object “fat pointers” for memory-safe native execution; current limits: no setjmp/longjmp and no fork.

AI-written summary · about

  1. 0:00Introduction
  2. 0:22The world is polyglot
  3. 3:06The idea behind Graal
  4. 4:26What is Sulong
  5. 20:16C extension API
  6. 24:21Inlining
  7. 24:57Performance measurements
  8. 26:05Running C extensions
  9. 28:55Other native interfaces
  10. 29:18Execution of native code
  11. 29:39Sulong allocation
  12. 32:55Conclusion
  13. 34:41Questions
  14. 37:34Calling conventions
  15. 39:41Throwing exceptions
  16. 41:16Memory safety
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.