OpenViSTAI · Agents · Blockchain · Crypto
Menu
Infrastructure

Dtvm

DTVM is a C++ blockchain virtual machine that executes smart contracts using WebAssembly and provides Ethereum Virtual Machine ABI compatibility. Its ZetaEngine runtime offers interpreter, singlepass JIT and lazy-JIT execution modes, with C/C++ and Rust integration paths.

Independent OpenViST project profile, based on linked sources.

Dtvm — OpenViST project profile in Infrastructure.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use DTVM when evaluating or integrating a Wasm-based blockchain virtual machine and its documented execution modes. Choose a build path based on architecture and whether LLVM 15 is available.

Who it is for

  • Blockchain engineers evaluating a deterministic WebAssembly runtime with Ethereum ABI compatibility.
  • Developers building software that embeds a smart-contract execution engine through C/C++ or Rust.

Documented uses

  • Build the runtime in interpreter, singlepass JIT or lazy-JIT mode.
  • Embed ZetaEngine in a C or C++ project using its headers and static library.
  • Explore the Rust library integration path.
  • Evaluate a runtime for smart contracts that need WebAssembly execution with Ethereum ABI compatibility.
Before you choose

Requirements & limits

  • Lazy JIT relies on LLVM 15 and is documented as supporting x86-64 only.
  • Singlepass JIT does not require LLVM and is documented for x86 and ARM64.
  • The interpreter has a separate default build path.
  • The README documents C/C++ library integration and points Rust users to a separate crate README.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Build DTVM in interpreter mode

Compile the ZetaEngine runtime using its documented default interpreter build.

Before you start

  • A CMake-capable build environment.

Steps

  1. Configure the build with cmake -B build -DCMAKE_BUILD_TYPE=Debug.

  2. Build with cmake --build build.

Expected outcome

The documented interpreter-mode build is produced in the build directory.

Guide limitations

  • The README refers to the user guide for additional CMake options.
  • This recipe covers building only, not running contracts or deploying the runtime.
Source-based practical guide

Build DTVM with singlepass JIT

Compile ZetaEngine using the documented singlepass JIT mode.

Before you start

  • A CMake-capable build environment.

Steps

  1. Configure with cmake -B build -DCMAKE_BUILD_TYPE=Debug -DZEN_ENABLE_SINGLEPASS_JIT=ON.

  2. Build with cmake --build build.

Expected outcome

The documented singlepass JIT build is produced in the build directory.

Guide limitations

  • The README describes singlepass as not requiring LLVM and lists x86 and ARM64 support.
  • This recipe covers building only, not running contracts or deploying the runtime.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
17 October 2026
Original website title
DTVMStack/DTVM · Official homepage title · retained in its source language