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

Levenshtein, 1k pairs

Edit-distance between 1,000 pre-generated string pairs of length 24–48.

Runtime · median per inner-loop window

median of 7 runs

Native Gocompiled
5.29 ms0.07×
Pipitbytecode VM
74.9 msbaseline
CPython 3.14bytecode VM
174 ms2.32×
PyPy 7.3tracing JIT
30.2 ms0.40×
Ttengobytecode VM
622 ms8.31×
Sscriggobytecode VM
318 ms4.24×
Mmvmbytecode VM
474 ms6.33×
YyaegiAST walker
694 ms9.27×

Full statistics

RunnerNCompileRuntimeP95StddevRSSvs pipitStatus
Native Gocompiled7109 ms5.29 ms5.29 ms69.3 µs197 MiB0.07×OK
Pipitbytecode VM71.18 ms74.9 ms76.2 ms972 µs114 MiB1.00×OK
CPython 3.14bytecode VM7439 µs174 ms176 ms1.32 msn/a2.32×OK
PyPy 7.3tracing JIT7326 µs30.2 ms33.2 ms1.18 msn/a0.40×OK
tengobytecode VM7257 µs622 ms628 ms25.9 ms191 MiB8.31×OK
scriggobytecode VM7400 µs318 ms343 ms13.0 ms191 MiB4.24×OK
mvmbytecode VM7360 µs474 ms497 ms11.6 ms191 MiB6.33×OK
yaegiAST walker7364 µs694 ms740 ms29.5 ms191 MiB9.27×OK
Workload & symmetry rules

Workload

For each of 1,000 pre-generated pairs, compute classical 2-row Levenshtein distance. Sum the distances and print the total.

Symmetry rules

  • 2-row dynamic-programming variant only, with no allocation per pair.
  • Hand-rolled min(a, b, c) (no math.min).
  • ASCII strings; no Unicode normalisation step.
Source code