Learn More
The vast computing resources in graphics processing units (GPUs) have become very attractive for general purpose scientific computing over the past years. Moreover, central processing units (CPUs) consist of an increasing number of individual cores. Most applications today still make use of a single core only, because standard data types and algorithms in(More)
The applicability of the meshing framework ViennaMesh for finite element simulations is investigated. Meshing tools are highly diverse, meaning that each software package offers specific properties, such as the conforming Delaunay property. The feasibility of these properties tends to be domain specific, thus restricting the general application of ameshing(More)
Quality and size of mesh elements are important for optimizing the accuracy and convergence of mesh-based simulation processes. Often, a priori information, like internal material properties, of regions of interest is available, which can be used to locally specify the mesh element size for finding a good balance between the mesh resolution on the one hand(More)
The Wigner Monte Carlo method, based on the generation and annihilation of particles, has emerged as a promising approach to treat transient problems of quantum electron transport in nanostructures. Tackling these simulations in multiple spatial dimensions demands a parallelized approach to facilitate a practical application of the method in order to(More)
We revisit the implementation of iterative solvers on discrete graphics processing units and demonstrate the benefit of implementations using extensive kernel fusion for pipelined formulations over conventional implementations of classical formulations. The proposed implementations with both CUDA and OpenCL are freely available in ViennaCL and are shown to(More)
Simulations in the field of scientific computing require often the availability of large sets of material properties. We propose a convenient approach for a lightweight material library using available open source tools. The presented approach is therefore suited for embedding into larger projects, such as simulators. The XML file format as well as an XML(More)
Creating multiple meshes of a semiconductor device by varying specific geometric properties, like the gate length of a MOSFET, is a crucial step for optimization or scaling processes of these devices. A geometry generation technique for semiconductor devices using geometry templates is presented and implemented in the open source meshing tool ViennaMesh,(More)
We present the free open source plugin execution framework ViennaX for modularizing and parallelizing scientific simulations. In general, functionality is abstracted by the notion of a task, which is implemented as a plugin. The plugin system facilitates the utilization of both, already available functionality as well as new implementations. Each task can(More)
The finite iterative method is compared to an industry-hardened fast marching method for accelerating the redistancing step essential for Level Set-based process simulations in the area of technology computer-aided design. We discuss our implementation of the finite iterative method and depict extensions to improve the method for process simulations, in(More)
Highly parallel computing architectures such as graphics processing units (GPUs) pose several new challenges for scientific computing, which have been absent on single core CPUs. However, a transition from existing serial code to parallel code for GPUs often requires a considerable amount of effort. The Vienna Computing Library (ViennaCL) presented in the(More)