Parallel generation of multiple L-systems

Markus Lipp, Peter Wonka, Michael Wimmer

Research output: Contribution to journalArticle

16 Citations (Scopus)

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 languageEnglish (US)
Pages (from-to)585-593
Number of pages9
JournalComputers and Graphics (Pergamon)
Volume34
Issue number5
DOIs
StatePublished - Oct 2010

Fingerprint

Parallel architectures
Parallel algorithms
Program processors
Geometry
Communication
Graphics processing unit

Keywords

  • Graphics hardware
  • L-systems
  • Parallel processing
  • Real-time rendering

ASJC Scopus subject areas

  • Computer Graphics and Computer-Aided Design
  • Human-Computer Interaction
  • Engineering(all)

Cite this

Parallel generation of multiple L-systems. / Lipp, Markus; Wonka, Peter; Wimmer, Michael.

In: Computers and Graphics (Pergamon), Vol. 34, No. 5, 10.2010, p. 585-593.

Research output: Contribution to journalArticle

Lipp, Markus ; Wonka, Peter ; Wimmer, Michael. / Parallel generation of multiple L-systems. In: Computers and Graphics (Pergamon). 2010 ; Vol. 34, No. 5. pp. 585-593.
@article{11bdec0a550047b190806527c8351bc2,
title = "Parallel generation of multiple L-systems",
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.",
keywords = "Graphics hardware, L-systems, Parallel processing, Real-time rendering",
author = "Markus Lipp and Peter Wonka and Michael Wimmer",
year = "2010",
month = "10",
doi = "10.1016/j.cag.2010.05.014",
language = "English (US)",
volume = "34",
pages = "585--593",
journal = "Computers and Graphics (Pergamon)",
issn = "0097-8493",
publisher = "Elsevier Limited",
number = "5",

}

TY - JOUR

T1 - Parallel generation of multiple L-systems

AU - Lipp, Markus

AU - Wonka, Peter

AU - Wimmer, Michael

PY - 2010/10

Y1 - 2010/10

N2 - 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.

AB - 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.

KW - Graphics hardware

KW - L-systems

KW - Parallel processing

KW - Real-time rendering

UR - http://www.scopus.com/inward/record.url?scp=77956095037&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=77956095037&partnerID=8YFLogxK

U2 - 10.1016/j.cag.2010.05.014

DO - 10.1016/j.cag.2010.05.014

M3 - Article

VL - 34

SP - 585

EP - 593

JO - Computers and Graphics (Pergamon)

JF - Computers and Graphics (Pergamon)

SN - 0097-8493

IS - 5

ER -