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.

Runtime · median per inner-loop window

median of 10 runs

Native Gocompiled
8.60 ms0.02×
Piko interpbytecode VM
527 msbaseline
CPython 3.13bytecode VM
547 ms1.04×
PyPy 7.3tracing JIT
52.9 ms0.10×
Ttengobytecode VM
1.47 s2.79×
Sscriggobytecode VM
n/a
Mmvmbytecode VM
1.28 s2.43×
YyaegiAST walker
1.33 s2.51×

Full statistics

RunnerNCompileRuntimeP95StddevRSSvs pikoStatus
Native Gocompiled10183 ms8.60 ms8.78 ms72.8 µs68 MiB0.02×OK
Piko interpbytecode VM101.21 ms527 ms531 ms2.36 ms142 MiB1.00×OK
CPython 3.13bytecode VM10381 µs547 ms570 ms9.25 msn/a1.04×OK
PyPy 7.3tracing JIT10318 µs52.9 ms54.0 ms663 µsn/a0.10×OK
tengobytecode VM10270 µs1.47 s1.52 s21.3 ms2.22 GiB2.79×OK
scriggobytecode VM0n/an/an/an/an/an/aunsupported
mvmbytecode VM10406 µs1.28 s1.31 s11.2 ms67 MiB2.43×OK
yaegiAST walker10470 µs1.33 s1.44 s61.0 ms66 MiB2.51×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