Acceleration of Particle Swarm Optimization with AVX Instructions

Parallel implementations of algorithms are usually compared with single-core CPU performance. The advantage of multicore vector processors decreases the performance gap between GPU and CPU computation, as shown in many recent pieces of research. With the AVX-512 instruction set, there will be anothe...

Full description

Saved in:
Bibliographic Details
Published inApplied sciences Vol. 13; no. 2; p. 734
Main Authors Safarik, Jakub, Snasel, Vaclav
Format Journal Article
LanguageEnglish
Published Basel MDPI AG 01.01.2023
Subjects
Online AccessGet full text
ISSN2076-3417
2076-3417
DOI10.3390/app13020734

Cover

More Information
Summary:Parallel implementations of algorithms are usually compared with single-core CPU performance. The advantage of multicore vector processors decreases the performance gap between GPU and CPU computation, as shown in many recent pieces of research. With the AVX-512 instruction set, there will be another performance boost for CPU computations. The availability of parallel code running on CPUs made them much easier and more accessible than GPUs. This article compares the performances of parallel implementations of the particle swarm optimization algorithm. The code was written in C++, and we used various techniques to obtain parallel execution through Advanced Vector Extensions. We present the performance on various benchmark functions and different problem configurations. The article describes and compares the performance boost gained from parallel execution on CPU, along with advantages and disadvantages of parallelization techniques.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:2076-3417
2076-3417
DOI:10.3390/app13020734