We will discuss the results of our attempts to implement a geometric multigrid algorithm on a single GPU. We will start by describing the process of building a library that facilitated our implementation of multigrid on the GPU. We will then focus on how different strategies for thread-balancing and parallelizing the algorithm affect performance for solving the 1D and 2D Poisson equation on a structured grid.