Host
Intel Core Ultra 9 285K · 24 cores
Platform
linux/amd64
Go
go1.27.0
CPython
python:3.14-slim
PyPy
pypy:3.11-slim
Runs / combo
7 + 2 warmup

Trie of 50k words

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

Compile time · median (cold)

median of 7 runs

Native Gocompiled
109 ms88.9×
Pipitbytecode VM
1.22 msbaseline
CPython 3.14bytecode VM
474 µs0.39×
PyPy 7.3tracing JIT
333 µs0.27×
Ttengobytecode VM
274 µs0.22×
Sscriggobytecode VM
n/a
Mmvmbytecode VM
409 µs0.33×
YyaegiAST walker
424 µs0.35×

Full statistics

RunnerNCompileRuntimeP95StddevRSSvs pipitStatus
Native Gocompiled7109 ms8.68 ms8.75 ms37.8 µs1.62 GiB88.9×OK
Pipitbytecode VM71.22 ms279 ms296 ms5.80 ms591 MiB1.00×OK
CPython 3.14bytecode VM7474 µs526 ms539 ms5.60 msn/a0.39×OK
PyPy 7.3tracing JIT7333 µs54.4 ms55.4 ms651 µsn/a0.27×OK
tengobytecode VM7274 µs1.31 s1.34 s16.6 ms1.69 GiB0.22×OK
scriggobytecode VM0n/an/an/an/an/an/aunsupported
mvmbytecode VM7409 µs1.02 s1.05 s13.6 ms1.69 GiB0.33×OK
yaegiAST walker7424 µs1.17 s1.19 s18.5 ms1.69 GiB0.35×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