Advanced search
Start date
Betweenand


A MIMD Interpreter for Genetic Programming

Full text
Author(s):
de Melo, Vinicius Veloso ; Fazenda, Alvaro Luiz ; Dal Piccol Sotto, Leo Francoso ; Iacca, Giovanni ; Castillo, PA ; Laredo, JLJ ; DeVega, FF
Total Authors: 7
Document type: Journal article
Source: APPLICATIONS OF EVOLUTIONARY COMPUTATION, EVOAPPLICATIONS 2020; v. 12104, p. 14-pg., 2020-01-01.
Abstract

Most Genetic Programming implementations use an interpreter to execute an individual, in order to obtain its outcome. Usually, such interpreter is the main bottleneck of the algorithm, since a single individual may contain thousands of instructions that must be executed on a dataset made of a large number of samples. Although one can use SIMD (Single Instruction Multiple Data) intrinsics to execute a single instruction on a few samples at the same time, multiple passes on the dataset are necessary to calculate the result. To speed up the process, we propose using MIMD (Multiple Instruction Multiple Data) instruction sets. This way, in a single pass one can execute several instructions on the dataset. We employ AVX2 intrinsics to improve the performance even further, reaching a median peak of 7.5 billion genetic programming operations per second in a single CPU core. (AU)

FAPESP's process: 16/07095-5 - Development of the probabilistic linear genetic programming technique and application on Kaizen programming for supervised machine learning
Grantee:Léo Françoso Dal Piccol Sotto
Support Opportunities: Scholarships in Brazil - Doctorate (Direct)