Posts
Jan, 22
Improving SMT performance: an application of genetic algorithms to configure resizable caches
Simultaneous Multithreading (SMT) is a technology aimed at improving the throughput of the processor core by applying Instruction Level Parallelism (ILP) and Thread Level Parallelism (TLP). Nevertheless a good control strategy is required when resources are shared among different threads, so that throughput is optimized. We study the application of evolutionary algorithms to improve the […]
Jan, 22
Accelerating evolutionary computation with graphics processing units
Graphics Processing Units (GPUs) have become a major source of computational power for numerical applications. Originally designed for application of time-consuming graphics operations, GPUs are stream processors that implement the SIMD paradigm. Modern programming tools allow developers to access the parallelism of the GPU in a flexible and convenient way, hiding many low level details […]
Jan, 22
Parallel genetic algorithm on the CUDA architecture
This paper deals with the mapping of the parallel island-based genetic algorithm with unidirectional ring migrations to nVidia CUDA software model. The proposed mapping is tested using Rosenbrock’s, Griewank’s and Michalewicz’s benchmark functions. The obtained results indicate that our approach leads to speedups up to seven thousand times higher compared to one CPU thread while […]
Jan, 22
Parallel Genetic Algorithm Solving 0/1 Knapsack Problem Running on the GPU
In this work, we show that consumer-level $100 GPU can be used to significantly speed-up optimization of 0/1 Knapsack problem. We identify strong and weak points of GPU architecture and propose our parallel genetic algorithm model implemented in CUDA running entirely on the GPU. We show that GPU must be utilized for sufficiently long time […]
Jan, 22
EASEA parallelization of tree-based Genetic Programming
This paper introduces the implementation of Koza-style tree-based Genetic Programming on General Purpose Graphic Processing Units (GPGPU) using the EASEA language, and shows how a GP algorithm can be easily implemented using EASEA and CUDA. Performance is first discussed on a classical toy problem taken from one of Koza’s books and then on a real […]
Jan, 21
Speedups between x70 and x120 for a generic local search (memetic) algorithm on a single GPGPU chip
This paper presents the first implementation of a generic memetic algorithm on one of the two GPU (Graphic Processing Unit) chips of a GTX295 gaming card. Observed speedups range between x70 and x120, mainly depending on the population size. An automatic parallelization of a memetic algorithm is provided through an upgrade of the EASEA language, […]
Jan, 21
Fast Evaluation of GP Trees on GPGPU by Optimizing Hardware Scheduling
This paper shows that it is possible to use General Purpose Graphic Processing Unit cards for a fast evaluation of different Genetic Programming trees on as few as 32 fitness cases by using the hardware scheduling of NVIDIA cards. Depending on the function set, observed speedup ranges between x50 and x250 on one half of […]
Jan, 21
GP on SPMD parallel graphics hardware for mega Bioinformatics data mining
We demonstrate a SIMD C++ genetic programming system on a single 128 node parallel nVidia GeForce 8800 GTX GPU under RapidMind’s GPGPU Linux software by predicting ten year+ outcome of breast cancer from a dataset containing a million inputs. NCBI GEO GSE3494 contains hundreds of Affymetrix HG-U133A and HG-U133B GeneChip biopsies. Multiple GP runs each […]
Jan, 21
Evolving GeneChip correlation predictors on parallel graphics hardware
A GPU is used to datamine five million correlations between probes within Affymetrix HG-U133A probesets across 6685 human tissue samples from NCBIpsilas GEO database. These concordances are used as machine learning training data for genetic programming running on a Linux PC with a RapidMind OpenGL GLSL backend. GPGPU is used to identify technological factors influencing […]
Jan, 21
Evolving a CUDA kernel from an nVidia template
Rather than attempting to evolve a complete program from scratch we demonstrate genetic interface programming (GIP) by automatically generating a parallel CUDA kernel with identical functionality to existing highly optimised ancient sequential C code (gzip). Generic GPGPU nVidia kernel C++ code is converted into a BNF grammar. Strongly typed genetic programming uses the BNF to […]
Jan, 21
Genetic Programming An Introductory Tutorial and a Survey of Techniques and Applications
This paper introduces genetic programming (GP) – a set of evolutionary computation techniques for getting computers to automatically solve problems without having to tell them explicitly how to do it. Since its inception, GP has been used to solve many practical problems, producing a number of human competitive results and even patentable new inventions. We […]
Jan, 21
A Field Guide to Genetic Programming
Genetic programming (GP) is a collection of evolutionary computation techniques that allow computers to solve problems automatically. Since its inception twenty years ago, GP has been used to solve a wide range of practical problems, producing a number of human-competitive results and even patentable new inventions. Like many other areas of computer science, GP is […]