GA-CBE Project

Project Description

This project aims to create a reusable and extensible genetic algorithms (GA) library for the STI Cell BE processor.

Project Motivation

The intrinsically parallel Cell BE architecture offers 200GFLOPS per 3.2GHz processor by combining a general purpose PowerPC processor (PPE) with 8 synergistic processing elements (SPEs). Originally conceived for the high-throughput streaming multimedia demands of advanced home entertainment systems, the Cell BE is also highly suitable for scientific computations achieving impressive speedup over contemporary processors on several benchmarks. The GA-CELL (or GA-CBE) project which aims to develop a reusable genetic algorithms (GA) library for the Cell BE processor. GA are widely used to optimize functions where gradient decent methods are not suitable. Concepts from natural evolution are used to guide a stochastic search of the solution space. Since each iteration of the algorithm requires the evaluation of several candidate solutions in parallel, GA are highly suitable for implementation on the Cell BE. The majority of the CELL-GA library operates on the PPE where generations of candidate solutions are created and evolved, while the far more computationally expensive job of evaluating candidate solutions is left to a user-defined application-specific fitness function that runs solely on the SPEs. As part of the GA-CELL project, a sample fitness function is provided that optimizes a linear discriminant over a multidimensional data set. Evaluation of this sample project using a dual-Cell blade server shows excellent performance that scales well with the number of available SPEs.

Project Availability

GA-CELL is an open source project available via SourceForge (

Project Developers

This project was initiated by a research group at Carleton University headed by Prof. James Green in January of 2007. Initial development was conducted by William (Ché) Knisely and Arman Aghaei. Interested developers are welcome to participate in this project. Logo
Updated 18 October 2007