Skip to content

Flavors

Hernán Morales Durand edited this page Feb 25, 2023 · 2 revisions

The VM has multiple "flavors", which target different types of VM to be built. The accepted flavours for the moment are as follows:

  • StackVM: VM with context to native stack mapping, without JIT
  • CoInterpreter: VM with JIT
  • CoInterpreterMT: VM with JIT + Multi-Threaded FFI callouts (non-blocking)
  • CoInterpreterWithQueueFFI: VM with JIT + Queue Based FFI callouts (non-blocking) and callbacks

All of them have Spur as the memory model.

By default the cmake build will build a CogVM, that is, a VM configuration with JIT compilation. Our cmake configuration accepts a FLAVOUR argument to specify different vm flavours to build, which you can use as follows:

cmake -DFLAVOUR=[your flavour] .

Clone this wiki locally