Conway's Game of Life
One kernel, one cell per thread. The grid stays in GPU memory between generations via
kernel.pipe() — it only comes back to JavaScript when there is a frame to draw.
generation 0
alive 0
— generations/s
— ms/generation
Click or drag on the grid to draw cells.