Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
441625 | Computers & Graphics | 2010 | 9 Pages |
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.
Graphical AbstractFigure optionsDownload full-size imageDownload high-quality image (185 K)Download as PowerPoint slideResearch Highlights► highly parallel algorithm for L-system evaluation ► works on arbitrary L-systems ► works directly on an input string and a plain-text representation of the productions ► requires no explicit inter-thread communication or atomic operations ► parallelizes both within one L-system as well as among a large number of L-systems.