cuPSO: GPU Parallelization for Particle Swarm Optimization Algorithms

05/03/2022
by   Chuan-Chi Wang, et al.
0

Particle Swarm Optimization (PSO) is a stochastic technique for solving the optimization problem. Attempts have been made to shorten the computation times of PSO based algorithms with massive threads on GPUs (graphic processing units), where thread groups are formed to calculate the information of particles and the computed outputs for the particles are aggregated and analyzed to find the best solution. In particular, the reduction-based method is considered as a common approach to handle the data aggregation and analysis for the calculated particle information. Nevertheless, based on our analysis, the reduction-based method would suffer from excessive memory accesses and thread synchronization overheads. In this paper, we propose a novel algorithm to alleviate the above overheads with the atomic functions. The threads within a thread group update the calculated results atomically to the intra-group data queue conditionally, which prevents the frequent accesses to the memory as done by the parallel reduction operations. Furthermore, we develop an enhanced version of the algorithm to alleviate the synchronization barrier among the thread groups, which is achieved by allowing the thread groups to run asynchronously and updating to the global, lock-protected variables occasionally if necessary. Our experimental results show that our proposed algorithm running on the Nvidia GPU is about 200 times faster than the serial version executed by the Intel Xeon CPU. Moreover, the novel algorithm outperforms the state-of-the-art method (the parallel reduction approach) by a factor of 2.2.

READ FULL TEXT
research
07/02/2018

Dynamic Swarm Dispersion in Particle Swarm Optimization for Mining Unsearched Area in Solution Space (DSDPSO)

Premature convergence in particle swarm optimization (PSO) algorithm usu...
research
02/05/2020

Parallel 3DPIFCM Algorithm for Noisy Brain MRI Images

In this paper we implemented the algorithm we developed in [1] called 3D...
research
11/16/2012

A Bayesian Interpretation of the Particle Swarm Optimization and Its Kernel Extension

Particle swarm optimization is a popular method for solving difficult op...
research
05/10/2020

Fuzzy Mutation Embedded Hybrids of Gravitational Search and Particle Swarm Optimization Methods for Engineering Design Problems

Gravitational Search Algorithm (GSA) and Particle Swarm Optimization (PS...
research
09/13/2019

A Particle Swarm Based Algorithm for Functional Distributed Constraint Optimization Problems

Distributed Constraint Optimization Problems (DCOPs) are a widely studie...
research
10/01/2021

Implementation of Parallel Simplified Swarm Optimization in CUDA

As the acquisition cost of the graphics processing unit (GPU) has decrea...
research
12/22/2020

Artificial Proto-Modelling: Building Precursors of a Next Standard Model from Simplified Model Results

We present a novel algorithm to identify potential dispersed signals of ...

Please sign up or login with your details

Forgot password? Click here to reset