I have always been interested in Conway’s Game of Life since I first became aware of it and my website home page has battles between randomly selected spaceship patterns.
I have created many programs to animate GOL and my early attempts were very slow due to badly designed algorithms. Over the years I have improved the algorithms significantly and in 2021 I created a Processing Sketch to run large grids using the power of Java 8 to perform parallel (multi-core) processing and this video shows it in action.
The sketch allows the user to switch between multi-core and single-core processing live at runtime and shows the average time to perform a single generation calculation.
On my computer I got ~1.05 ms for multi-core and ~2.7 ms for single-core processing.
Since the life grid has 1 million cells 2.7ms for a standard Processing sketch is pretty awesome even if I do say so myself ![]()
In fact it is probably fast enough except for the largest life grids. I did try the sketch with the breeder pattern on a grid with 6 million cells and I got (7.4 and ~22ms) which OK using multi-core but too slow with single-core.
The point is that quite large grids can be processed quickly enough without having to resort to multi-threading or multi-core processing if we use the right algorithms.
If you are like me you will probably want to have the satisfaction of creating your own sketch, in which case I can describe the algorithms I used. They are no harder to implement than anything you have done already, simply different.
Alternatively I can zip up the sketch and post a link for you and anyone else to download it.