Game of Life: Tribes

#Benchmark Hardware, Method, And Coverage

These benchmarks are measured on a laptop using the Conway preset and Toroidal topology. The goal is to compare how max speed changes across grid sizes, bit-packing formats, and recording.

#Hardware:

  • CPU: Intel Core i7-12700H
  • GPU: NVIDIA RTX 3070 Ti Laptop GPU, 150 W, 8 GB GDDR6 VRAM
  • WebGPU maxBufferSize: 2 147 483 648 bytes
  • WebGPU maxStorageBufferBindingSize: 2 147 483 644 bytes
  • RAM: 64 GB DDR5 SODIMM Corsair 4 800 MHz, 2 × 32 GB
  • Storage: Samsung SSD 980 PRO 1 TB
  • Browser: Opera GX 131.0.5877.111, based on Chromium 147.0.7727.56
  • OS: Windows 10 22H2
  • GPU selection: dedicated GPU
  • Power: plugged in

#Method:

  • The laptop is plugged in and the browser is using the dedicated GPU.
  • Each sample is configured through the benchmark runner, then measured in max speed mode.
  • The simulation warms up for 55 seconds so adaptive batching can settle.
  • After warm-up, the runner pauses, waits 22 seconds for the generation counter to settle, reads the starting generation, waits another 33 seconds, then measures a t=60t=60 second max-speed run.
  • The ending generation is read 22 seconds after the measured run stops, and reported speed is endstartt\frac{\text{end}-\text{start}}{t}. Then, another 2828 seconds are waited to let the device cool down.
  • Each supported sample is repeated 55 times, and the best observed run is reported.
  • Recording runs include OPFS write backpressure in the measured speed.

#Grid and packing coverage:

Grid Tested bit packings
128×128128\times128 11, 22, 44, 88, 1616, 3232
256×256256\times256 11, 22, 44, 88, 1616, 3232
512×512512\times512 11, 22, 44, 88, 1616, 3232
1024×10241\,024\times1\,024 11, 22, 44, 88, 1616, 3232
2048×20482\,048\times2\,048 11, 22, 44, 88, 1616, 3232
4096×40964\,096\times4\,096 11, 22, 44, 88, 1616, 3232
8192×81928\,192\times8\,192 11, 22, 44, 88, 1616, 3232
16384×1638416\,384\times16\,384 11, 22, 44, 88, 1616, 3232
32768×3276832\,768\times32\,768 11, 22, 44, 88, 1616
65536×6553665\,536\times65\,536 11, 22, 44
131072×131072131\,072\times131\,072 11

Most grids are tested with every bit-packing format. Wider packings make each frame larger, so the largest grids stop at the widest format still allowed by the device frame-size limits. A few maximum-size cases use one fewer row for the same reason: 32768×3276732\,768\times32\,767 at 1616-bit packing, 65536×6553565\,536\times65\,535 at 44-bit packing, and 131072×131071131\,072\times131\,071 at 11-bit packing.

Recording is measured only where the engine supports it for that grid and packing.

Game of Life: Tribes · Simulation v1.0.0 · Open source