6,786 research outputs found
GPU-based Streaming for Parallel Level of Detail on Massive Model Rendering
Rendering massive 3D models in real-time has long been recognized as a very challenging problem because of the limited computational power and memory space available in a workstation. Most existing rendering techniques, especially level of detail (LOD) processing, have suffered from their sequential execution natures, and does not scale well with the size of the models. We present a GPU-based progressive mesh simplification approach which enables the interactive rendering of large 3D models with hundreds of millions of triangles. Our work contributes to the massive rendering research in two ways. First, we develop a novel data structure to represent the progressive LOD mesh, and design a parallel mesh simplification algorithm towards GPU architecture. Second, we propose a GPU-based streaming approach which adopt a frame-to-frame coherence scheme in order to minimize the high communication cost between CPU and GPU. Our results show that the parallel mesh simplification algorithm and GPU-based streaming approach significantly improve the overall rendering performance
A framework for realistic 3D tele-immersion
Meeting, socializing and conversing online with a group of people using teleconferencing systems is still quite differ- ent from the experience of meeting face to face. We are abruptly aware that we are online and that the people we are engaging with are not in close proximity. Analogous to how talking on the telephone does not replicate the experi- ence of talking in person. Several causes for these differences have been identified and we propose inspiring and innova- tive solutions to these hurdles in attempt to provide a more realistic, believable and engaging online conversational expe- rience. We present the distributed and scalable framework REVERIE that provides a balanced mix of these solutions. Applications build on top of the REVERIE framework will be able to provide interactive, immersive, photo-realistic ex- periences to a multitude of users that for them will feel much more similar to having face to face meetings than the expe- rience offered by conventional teleconferencing systems
Detailed analysis of the lattice Boltzmann method on unstructured grids
The lattice Boltzmann method has become a standard for efficiently solving
problems in fluid dynamics. While unstructured grids allow for a more efficient
geometrical representation of complex boundaries, the lattice Boltzmann methods
is often implemented using regular grids. Here we analyze two implementations
of the lattice Boltzmann method on unstructured grids, the standard forward
Euler method and the operator splitting method. We derive the evolution of the
macroscopic variables by means of the Chapman-Enskog expansion, and we prove
that it yields the Navier-Stokes equation and is first order accurate in terms
of the temporal discretization and second order in terms of the spatial
discretization. Relations between the kinetic viscosity and the integration
time step are derived for both the Euler method and the operator splitting
method. Finally we suggest an improved version of the bounce-back boundary
condition. We test our implementations in both standard benchmark geometries
and in the pore network of a real sample of a porous rock.Comment: 42 page
PyFR: An Open Source Framework for Solving Advection-Diffusion Type Problems on Streaming Architectures using the Flux Reconstruction Approach
High-order numerical methods for unstructured grids combine the superior
accuracy of high-order spectral or finite difference methods with the geometric
flexibility of low-order finite volume or finite element schemes. The Flux
Reconstruction (FR) approach unifies various high-order schemes for
unstructured grids within a single framework. Additionally, the FR approach
exhibits a significant degree of element locality, and is thus able to run
efficiently on modern streaming architectures, such as Graphical Processing
Units (GPUs). The aforementioned properties of FR mean it offers a promising
route to performing affordable, and hence industrially relevant,
scale-resolving simulations of hitherto intractable unsteady flows within the
vicinity of real-world engineering geometries. In this paper we present PyFR,
an open-source Python based framework for solving advection-diffusion type
problems on streaming architectures using the FR approach. The framework is
designed to solve a range of governing systems on mixed unstructured grids
containing various element types. It is also designed to target a range of
hardware platforms via use of an in-built domain specific language based on the
Mako templating engine. The current release of PyFR is able to solve the
compressible Euler and Navier-Stokes equations on grids of quadrilateral and
triangular elements in two dimensions, and hexahedral elements in three
dimensions, targeting clusters of CPUs, and NVIDIA GPUs. Results are presented
for various benchmark flow problems, single-node performance is discussed, and
scalability of the code is demonstrated on up to 104 NVIDIA M2090 GPUs. The
software is freely available under a 3-Clause New Style BSD license (see
www.pyfr.org)
Kinetic Solvers with Adaptive Mesh in Phase Space
An Adaptive Mesh in Phase Space (AMPS) methodology has been developed for
solving multi-dimensional kinetic equations by the discrete velocity method. A
Cartesian mesh for both configuration (r) and velocity (v) spaces is produced
using a tree of trees data structure. The mesh in r-space is automatically
generated around embedded boundaries and dynamically adapted to local solution
properties. The mesh in v-space is created on-the-fly for each cell in r-space.
Mappings between neighboring v-space trees implemented for the advection
operator in configuration space. We have developed new algorithms for solving
the full Boltzmann and linear Boltzmann equations with AMPS. Several recent
innovations were used to calculate the discrete Boltzmann collision integral
with dynamically adaptive mesh in velocity space: importance sampling,
multi-point projection method, and the variance reduction method. We have
developed an efficient algorithm for calculating the linear Boltzmann collision
integral for elastic and inelastic collisions in a Lorentz gas. New AMPS
technique has been demonstrated for simulations of hypersonic rarefied gas
flows, ion and electron kinetics in weakly ionized plasma, radiation and light
particle transport through thin films, and electron streaming in
semiconductors. We have shown that AMPS allows minimizing the number of cells
in phase space to reduce computational cost and memory usage for solving
challenging kinetic problems
Fine-grained visualization pipelines and lazy functional languages
The pipeline model in visualization has evolved from a conceptual model of data processing into a widely used architecture for implementing visualization systems. In the process, a number of capabilities have been introduced, including streaming of data in chunks, distributed pipelines, and demand-driven processing. Visualization systems have invariably built on stateful programming technologies, and these capabilities have had to be implemented explicitly within the lower layers of a complex hierarchy of services. The good news for developers is that applications built on top of this hierarchy can access these capabilities without concern for how they are implemented. The bad news is that by freezing capabilities into low-level services expressive power and flexibility is lost. In this paper we express visualization systems in a programming language that more naturally supports this kind of processing model. Lazy functional languages support fine-grained demand-driven processing, a natural form of streaming, and pipeline-like function composition for assembling applications. The technology thus appears well suited to visualization applications. Using surface extraction algorithms as illustrative examples, and the lazy functional language Haskell, we argue the benefits of clear and concise expression combined with fine-grained, demand-driven computation. Just as visualization provides insight into data, functional abstraction provides new insight into visualization
- …