Erasmus Langer
Siegfried Selberherr
Oskar Baumgartner
Hajdin Ceric
Johann Cervenka
Otmar Ertl
Wolfgang Gös
Klaus-Tibor Grasser
Philipp Hehenberger
René Heinzl
Gerhard Karlowatz
Markus Karner
Hans Kosina
Gregor Meller
Goran Milovanovic
Mihail Nedjalkov
Roberto Orio
Vassil Palankovski
Mahdi Pourfath
Franz Schanovsky
Philipp Schwaha
Franz Stimpfl
Viktor Sverdlov
Oliver Triebl
Stanislav Tyaginov
Martin-Thomas Vasicek
Stanislav Vitanov
Paul-Jürgen Wagner
Thomas Windbacher

René Heinzl
Dipl.-Ing. Dr.techn.
heinzl(!at)iue.tuwien.ac.at
Biography:
René Heinzl was born in Vienna, Austria, in 1977. He studied electrical engineering at the Technische Universität Wien, where he received the degree of Diplomingenieur in 2003 and his PhD in technical sciences in 2007. In April 2005 he achieved first place in the doctoral competition at the EEICT in Brno. His research interests include programming paradigms, high performance programming techniques, data structural aspects of scientific computing, performance analysis, process simulation, solid modeling, scientific visualization, algebraic topology, and mesh generation and adaptation for TCAD.

A Parallel Generic Scientific Simulation Environment

The current evolutionary shift in the way the computational power of systems increases requires the adoption of new programming methodologies and libraries. Two approaches have been developed within the Generic Scientific Simulation Environment (GSSE), which makes use of several parallelization techniques that can be implemented without altering the existing algorithms, the parallel STL and Boost thread library. This can be achieved orthogonally by using the inherently parallel functional programming paradigm for algorithm specification, in combination with generic and object-oriented programming paradigms.
An example of a parallel topological traversal mechanism is presented by a parallel combined Delaunay and advancing front mesh generation and adaptation approach. The complete hull is pre-processed separately to comply with the Delaunay property. This guarantees a volume mesh generation approach, where each segment is meshed concurrently.
The time needed to calculate the distribution of quantities of interest in a given simulation domain is primarily allocated to the assembly of an equation system and the subsequent solution of the matrix representing the said equation system. How this time requirement is allocated depends on the complexity of the equations being assembled as well as on their numerical condition. A benchmark for a simple drift-diffusion and hydro-dynamic simulation for a two-dimensional pn-diode with different compilers and optimization levels and different numbers of concurrent threads results in performance gains of up to 400-500% compared to the serial code on dual and quad core machines without altering the existing code base.
By using the concept of library-centric application design in the area of parallel environments, it can be shown that the whole simulation process can be easily separated into small building blocks. The appropriate realization of each of this blocks guarantees not only an impressive performance, but also eases development, stabilization, further support, and parallelization.

Home | Activities | Staff | Publications | Sponsors | Contact Us