Speeding Up Lenia: A Comparative Study between CUDA and Existing Implementations
Résumé
Lenia is a family of cellular automata with continuous states, space and time, that surprises not only with the emergence of life-like structures and behavior, but also its beauty. This paper reports on a comparative study conducted between the most prominent implementations currently used in the scientific community and a new GPU implementation written in CUDA C++. Our study primarily considers measurements of speed and memory usage, as these factors are critical for large-scale simulations, but we also assess ease of use, configurability, and extensibility. Experimental runs show that the CUDA implementation distinctly outperforms existing implementations while conserving a reasonable memory footprint. The results demonstrate how low-level GPU programming combined with different optimization ideas allows pushing the performance boundaries of the Lenia algorithm, and they provide valuable lessons for the general practice of parallel programming for continuous cellular automata.
| Origine | Fichiers éditeurs autorisés sur une archive ouverte |
|---|---|
| Licence |