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

Game of Life

200×200 Conway's Game of Life for 1,000 generations on a wrap-around grid.

Runtime · median per inner-loop window

median of 7 runs

Native Gocompiled
80.6 ms0.05×
Pipitbytecode VM
1.78 sbaseline
CPython 3.14bytecode VM
5.95 s3.34×
PyPy 7.3tracing JIT
152 ms0.09×
Ttengobytecode VM
10.2 s5.72×
Sscriggobytecode VM
6.90 s3.87×
Mmvmbytecode VM
9.01 s5.05×
YyaegiAST walker
10.3 s5.77×

Full statistics

RunnerNCompileRuntimeP95StddevRSSvs pipitStatus
Native Gocompiled7108 ms80.6 ms82.2 ms1.08 ms1.62 GiB0.05×OK
Pipitbytecode VM71.42 ms1.78 s1.82 s12.3 ms591 MiB1.00×OK
CPython 3.14bytecode VM7418 µs5.95 s6.13 s79.6 msn/a3.34×OK
PyPy 7.3tracing JIT7312 µs152 ms153 ms611 µsn/a0.09×OK
tengobytecode VM7268 µs10.2 s10.4 s61.7 ms1.69 GiB5.72×OK
scriggobytecode VM7467 µs6.90 s6.93 s50.4 ms1.69 GiB3.87×OK
mvmbytecode VM7423 µs9.01 s9.43 s175 ms1.69 GiB5.05×OK
yaegiAST walker7378 µs10.3 s10.4 s47.1 ms1.69 GiB5.77×OK
Workload & symmetry rules

Workload

Double-buffered 200×200 cell grid. Wrap-around boundary. 1,000 generations from a glider gun start state. Print the final live-cell count.

Symmetry rules

  • Two flat byte arrays, no numpy / fancy slicing.
  • Neighbour sum unrolled by hand.
Source code