JAM

Conformance Performance

Important Note

This leaderboard highlights performance differences between JAM implementations. All implementations are works in progress and none are fully conformant yet. The rankings serve to track relative performance improvements over time.

Performance Comparison

All implementations relative to PolkaJam(aggregate weighted scores - see methodology below)

Sep 16, 6:09 PM
e125b99
1
PolkaJam (Recompiler)
Rust
1.5x faster1.87ms
2
PolkaJamBaseline
Rust
baseline2.74ms
3
SpaceJam
Rust
1.4x slower3.79ms
4
TurboJam
C++
1.6x slower4.29ms
5
JAM DUNA
Go
1.9x slower5.29ms
6
JamZig
Zig
2.9x slower8.05ms
7
JavaJAM
Java
3.7x slower10.02ms
8
Jamzilla
Go
5.4x slower14.92ms
9
Vinwolf
Rust
5.0x slower13.66ms
10
FastRoll
Rust
6.2x slower16.98ms
11
Boka
Swift
12.6x slower34.50ms
12
TSJam
TypeScript
15.8x slower43.33ms
13
Jamixir
Elixir
14.8x slower40.68ms
14
JamPy
Python
18.3x slower50.06ms
15
PyJAMaz
Python
26.0x slower71.35ms
Linear scale • Lower is better
Percentiles:
P50
P90
P99
<1.2x
<2x
<10x
>50x

Performance Rankings

Baseline: PolkaJam(Score: 3.2)

RankTeamLanguageScoreP50 (ms)P90 (ms)Relative PerformanceTrend
1
PolkaJam (Recompiler)
Rust2.02.062.28
1.5x faster
2
PolkaJam
Rust3.22.924.16
baseline
3
SpaceJam
Rust4.53.135.90
1.4x slower
4
TurboJam
C++5.43.507.83
1.6x slower
5
JAM DUNA
Go6.25.237.33
1.9x slower
6
JamZig
Zig10.65.8110.89
2.9x slower
7
JavaJAM
Java12.99.8916.30
3.7x slower
8
Jamzilla
Go19.59.6020.34
5.4x slower
9
Vinwolf
Rust19.75.8410.84
5.0x slower
10
FastRoll
Rust22.212.4223.49
6.2x slower
11
Boka
Swift42.628.3758.12
12.6x slower
12
TSJam
TypeScript61.128.8274.73
15.8x slower
13
Jamixir
Elixir66.126.6776.10
14.8x slower
14
JamPy
Python72.633.9199.45
18.3x slower
15
PyJAMaz
Python103.855.65130.62
26.0x slower

Audit Time Calculator

Time required for polkajam to complete audit

1PolkaJam (Recompiler)
2.0d
2PolkaJam
3.0d
3SpaceJam
4.1d
4TurboJam
4.7d
5JAM DUNA
5.8d
6JamZig
8.8d
7JavaJAM
11.0d
8Jamzilla
16.3d
9Vinwolf
15.0d
10FastRoll
18.6d
11Boka
37.8d
12TSJam
47.4d
13Jamixir
44.5d
14JamPy
54.8d
15PyJAMaz
78.1d

Note: These calculations show the real-world impact of performance differences on audit requirements.

Scoring Methodology

Weighted scoring system that considers full performance distribution. Our scoring system prioritizes consistent, predictable performance by weighing multiple statistical metrics:

Median (P50)
35%
Typical performance
90th Percentile
25%
Consistency
Mean
20%
Average
99th Percentile
10%
Worst case
Consistency
10%
Lower variance

How it works:

  1. 1. Performance measurements are based on the public W3F test vector traces
  2. 2. For each benchmark, we calculate a weighted score using the metrics above
  3. 3. We use geometric mean across all benchmarks to aggregate metrics
  4. 4. Teams are ranked by their final weighted score (lower is better)
  5. 5. Polkajam (interpreted) serves as the baseline (1.0x) for relative comparisons
Note: Only teams with data for all four benchmarks (Safrole, Fallback, Storage, Storage Light) are included in the overview. Zero values are excluded from calculations as they likely represent measurement errors.

Performance data updated regularly. Version: 0.7.0| Last updated: Sep 16, 2025, 6:09 PM| Source data from: Sep 16, 2025

Testing protocol conformance at scale. Learn more at jam-conformance | Commit e125b99 | View all clients