CellLB source code
Accelerator processors like the new Cell processor are extending the traditional platforms for scientific computation allowing orders of magnitude more floating-point operations per second (Flops) compared to standard central processing units (CPUs).
In a recently submitted paper, we investigated the potential of the Cell processor for scientific investigation by porting a lattice Boltzmann code on the Cell processor, testing the accuracy of this lattice method used in fluid dynamics.
Simulation results demonstrate that the use of the Cell processor for fluid dynamics simulations is possible, modulo some precision issues due to non exact IEEE 754 compliacy. Benchmarks on two Cell-based platforms are performed, the Sony Playstation3(PS3) and the QS20/QS21 IBM blade, obtaining a speed-up factor of respectively 7 and 21 compared to the original PC version of the code, and a conservative sustained performance of 28 gigaFlops per single Cell processor.
In an attempt to stimulate willing scientists from any field to embrace such new technology and provide hands-on examples, we distribute here the main algorithmic part of the code under open source GPL licence. A copy of the license can be downloaded from here.
Download the PPE_code and SPE_code collision-propagation routines.
