[Main website]

tech/omr-runtime

IBM Eclipse OMR project is a series of tools (garbage-collector, JIT, etc…) for implementing a new language run-time, without starting from scratch.

It is used for IBM J9 VM, but the run-time is generic and it can be used for Python, Ruby and many other languages.

It is different from Oracle Graal project

  • it is a “classical” run-time, where one give hints to the GC and so on
  • it is written in C++

Both Graal and OMR are used in production for real projects.

Probably Graal is more advanced: different languages can cohexist with very few overhead.

Probably OMR is more lightweight: less RAM is needed.

Probably OMR is a sort of LLVM with some aspects already solved: GC, efficient JIT, instrumentations and management of code.