Benchmark Suite
The Rumi Performance Benchmark Suite is a collection of benchmarking tools that measure the performance of individual Rumi runtime components. These tools serve both as performance measurement utilities and as sample code demonstrating Rumi best practices.
What's in the Suite
The benchmark suite contains 7 modules, each focusing on a specific Rumi component:
Relationship to Canonical Benchmark
The AEP Module contains the Canonical Benchmark - the official end-to-end performance test used to measure Rumi's published performance metrics. While the canonical benchmark measures the complete Receive-Process-Send flow, the other modules isolate and test individual components.
Source Repository
The benchmark suite source code is available at:
Repository: github.com/rumidata/nvx-rumi-perf
Organization: Multi-module Maven project
License: Embedded (no separate license required to run)
Releases
Versioning
A benchmark suite release is published for each Rumi release. The benchmark version matches the Rumi version it tests.
Distribution Naming
Distributions are named as follows:
Linux and macOS:
Windows:
Valid architectures (arch):
linux-x86-64- Linux (recommended for performance testing)osx-x86-64- macOS (development only)win-x86-64- Windows (development only)
Example: The Linux distribution for version 4.0.4 is named:
Important: Only Linux distributions include Rumi native libraries required for zero-garbage operation. Windows and macOS distributions can be used for development, but Linux is required for full performance optimization.
Download
Download distributions from the Neeve artifact repository:
Linux:
macOS:
Windows:
Replace 4.0.4 with your desired version.
Running Benchmarks
1. Extract Distribution
Linux/macOS:
Windows:
This creates:
2. Run a Benchmark
With Java 8:
Linux/macOS:
Windows:
With Java 11 or later:
Linux/macOS:
Windows:
Example - Serialization Benchmark
With Java 8:
With Java 11+:
Next Steps
Module Documentation: See the Modules section for detailed information on each benchmark module, including program classes, parameters, and interpreting results
Canonical Benchmark: Learn about the official end-to-end benchmark
Build from Source: See the nvx-rumi-perf repository for build instructions
Last updated

