GPU Enabled Particle Swarm Optimization
Abstract
GPUs are massively parallelized devices. They were designed to handle billions of pixels per second. It is does this by embracing an incredible level of parallelism. GPUs in fact can leverage any other parallel algorithms developed for super computers. Many disciplines in science and engineering are achieving high speedups on their codes using GPUs. This paper implements a GPU-enabled Particle Swarm Optimization (PSO) algorithm and evaluates the scalability of the algorithm. Several experiments were conducted comparing the CPU with the GPU implementation, analyzing the scalability of the GPU implementation with regards to increases in population size and dimension, as well as memory usage needed. Overall, the results reveal that the GPU implementation of the PSO algorithm scales very well executed on the Nvidia Tesla K40.