Abstract
This paper introduces a solution to compute L-systems on parallel architectures like GPUs and multi-core CPUs. Our solution can split the derivation of the L-system as well as the interpretation and geometry generation into thousands of threads running in parallel. We introduce a highly parallel algorithm for L-system evaluation that works on arbitrary L-systems, including parametric productions, context sensitive productions, stochastic production selection, and productions with side effects. This algorithm is further extended to allow evaluation of multiple independent L-systems in parallel. In contrast to previous work, we directly interpret the productions defined in plain-text, without requiring any compilation or transformation step (e.g., into shaders). Our algorithm is efficient in the sense that it requires no explicit inter-thread communication or atomic operations, and is thus completely lock free.
Original language | English (US) |
---|---|
Pages (from-to) | 585-593 |
Number of pages | 9 |
Journal | Computers and Graphics (Pergamon) |
Volume | 34 |
Issue number | 5 |
DOIs | |
State | Published - Oct 2010 |
Externally published | Yes |
Keywords
- Graphics hardware
- L-systems
- Parallel processing
- Real-time rendering
ASJC Scopus subject areas
- General Engineering
- Human-Computer Interaction
- Computer Graphics and Computer-Aided Design