Back to projects

Software

CUDA Powered Game of Life

A GPU-accelerated implementation of Conway's Game of Life. A CUDA kernel computes the next generation in parallel across every cell, with the serial CPU version retained for validation and speedup measurement.

CUDA Game of Life

Overview

Each cell in Conway's Game of Life only needs its eight neighbours to determine its next state, which makes the simulation a textbook case for GPU acceleration. This project implements the next-generation step as a CUDA kernel — one thread per cell — and benchmarks it against a baseline serial CPU implementation across grid sizes, CUDA block sizes, and visualization update rates.

Highlights

  • Up to 131× speedup over the serial implementation on a GTX 1080
  • Studied block-size and visualization-frequency impact on throughput
  • Per-iteration pixel comparison to verify GPU output matches CPU output
  • OpenCV used for grid visualization and image output

Tech Stack

CUDA
C++
OpenCV
NVIDIA GPU