Host
Intel Core Ultra 9 285K · 24 cores
Platform
linux/amd64
Go
go1.26.0
CPython
python:3.13-slim
PyPy
pypy:3.10-slim
Runs / combo
10 + 2 warmup

Trie of 50k words

Insert 50k dictionary words into a trie; perform 10k prefix queries.

Compile time · median (cold)

median of 10 runs

Native Gocompiled
183 ms151×
Piko interpbytecode VM
1.21 msbaseline
CPython 3.13bytecode VM
381 µs0.32×
PyPy 7.3tracing JIT
318 µs0.26×
Ttengobytecode VM
270 µs0.22×
Sscriggobytecode VM
n/a
Mmvmbytecode VM
406 µs0.34×
YyaegiAST walker
470 µs0.39×

Full statistics

RunnerNCompileRuntimeP95StddevRSSvs pikoStatus
Native Gocompiled10183 ms8.60 ms8.78 ms72.8 µs68 MiB151×OK
Piko interpbytecode VM101.21 ms527 ms531 ms2.36 ms142 MiB1.00×OK
CPython 3.13bytecode VM10381 µs547 ms570 ms9.25 msn/a0.32×OK
PyPy 7.3tracing JIT10318 µs52.9 ms54.0 ms663 µsn/a0.26×OK
tengobytecode VM10270 µs1.47 s1.52 s21.3 ms2.22 GiB0.22×OK
scriggobytecode VM0n/an/an/an/an/an/aunsupported
mvmbytecode VM10406 µs1.28 s1.31 s11.2 ms67 MiB0.34×OK
yaegiAST walker10470 µs1.33 s1.44 s61.0 ms66 MiB0.39×OK
Workload & symmetry rules

Workload

Build a 26-way trie from 50,000 lowercase ASCII words. Run 10,000 random prefix-existence queries. Print the count of hits.

Symmetry rules

  • Trie nodes carry a fixed 26-slot child array (no map).
  • Manual recursion or explicit stack.
Source code