71 research outputs found

    Efficient Techniques for Wave-based Sound Propagation in Interactive Applications

    Get PDF
    Sound propagation techniques model the effect of the environment on sound waves and predict their behavior from point of emission at the source to the final point of arrival at the listener. Sound is a pressure wave produced by mechanical vibration of a surface that propagates through a medium such as air or water, and the problem of sound propagation can be formulated mathematically as a second-order partial differential equation called the wave equation. Accurate techniques based on solving the wave equation, also called the wave-based techniques, are too expensive computationally and memory-wise. Therefore, these techniques face many challenges in terms of their applicability in interactive applications including sound propagation in large environments, time-varying source and listener directivity, and high simulation cost for mid-frequencies. In this dissertation, we propose a set of efficient wave-based sound propagation techniques that solve these three challenges and enable the use of wave-based sound propagation in interactive applications. Firstly, we propose a novel equivalent source technique for interactive wave-based sound propagation in large scenes spanning hundreds of meters. It is based on the equivalent source theory used for solving radiation and scattering problems in acoustics and electromagnetics. Instead of using a volumetric or surface-based approach, this technique takes an object-centric approach to sound propagation. The proposed equivalent source technique generates realistic acoustic effects and takes orders of magnitude less runtime memory compared to prior wave-based techniques. Secondly, we present an efficient framework for handling time-varying source and listener directivity for interactive wave-based sound propagation. The source directivity is represented as a linear combination of elementary spherical harmonic sources. This spherical harmonic-based representation of source directivity can support analytical, data-driven, rotating or time-varying directivity function at runtime. Unlike previous approaches, the listener directivity approach can be used to compute spatial audio (3D audio) for a moving, rotating listener at interactive rates. Lastly, we propose an efficient GPU-based time-domain solver for the wave equation that enables wave simulation up to the mid-frequency range in tens of minutes on a desktop computer. It is demonstrated that by carefully mapping all the components of the wave simulator to match the parallel processing capabilities of the graphics processors, significant improvement in performance can be achieved compared to the CPU-based simulators, while maintaining numerical accuracy. We validate these techniques with offline numerical simulations and measured data recorded in an outdoor scene. We present results of preliminary user evaluations conducted to study the impact of these techniques on user's immersion in virtual environment. We have integrated these techniques with the Half-Life 2 game engine, Oculus Rift head-mounted display, and Xbox game controller to enable users to experience high-quality acoustics effects and spatial audio in the virtual environment.Doctor of Philosoph

    An Iterative Parallel Solver in GPU Applied to Frequency Domain Linear Water Wave Problems by the Boundary Element Method

    Get PDF
    In this paper a parallel iterative solver based on the Generalized Minimum Residual Method (GMRES) with complex-valued coefficients is explored, with applications to the Boundary Element Method (BEM). The solver is designed to be executed in a GPU (Graphic Processing Unit) device, exploiting its massively parallel capabilities. The BEM is a competitive method in terms of reduction in the number of degrees of freedom. Nonetheless, the BEM shows disadvantages when the dimension of the system grows, due to the particular structure of the system matrix. With difference to other acceleration techniques, the main objective of the proposed solver is the direct acceleration of existing standard BEM codes, by transfering to the GPU the solver task. The CUDA programming language is used, exploiting the particular architecture of the GPU device for complex-valued systems. To explore the performances of the solver, two linear water wave problems have been tested: the frequency-dependent added mass and damping matrices of a 3D floating body, and the Helmholtz equation in a 2D domain. A NVidia GeForce GTX 1080 graphic card has been used. The parallelized GMRES solver shows reductions in computing times when compared with its CPU implementation

    Fast and Accurate Boundary Element Methods in Three Dimensions

    Get PDF
    The Laplace and Helmholtz equations are two of the most important partial differential equations (PDEs) in science, and govern problems in electromagnetism, acoustics, astrophysics, and aerodynamics. The boundary element method (BEM) is a powerful method for solving these PDEs. The BEM reduces the dimensionality of the problem by one, and treats complex boundary shapes and multi-domain problems well. The BEM also suffers from a few problems. The entries in the system matrices require computing boundary integrals, which can be difficult to do accurately, especially in the Galerkin formulation. These matrices are also dense, requiring O(N^2) to store and O(N^3) to solve using direct matrix decompositions, where N is the number of unknowns. This can effectively restrict the size of a problem. Methods are presented for computing the boundary integrals that arise in the Galerkin formulation to any accuracy. Integrals involving geometrically separated triangles are non-singular, and are computed using a technique based on spherical harmonics and multipole expansions and translations. Integrals involving triangles that have common vertices, edges, or are coincident are treated via scaling and symmetry arguments, combined with recursive geometric decomposition of the integrals. The fast multipole method (FMM) is used to accelerate the BEM. The FMM is usually designed around point sources, not the integral expressions in the BEM. To apply the FMM to these expressions, the internal logic of the FMM must be changed, but this can be difficult. The correction factor matrix method is presented, which approximates the integrals using a quadrature. The quadrature points are treated as point sources, which are plugged directly into current FMM codes. Any inaccuracies are corrected during a correction factor step. This method reduces the quadratic and cubic scalings of the BEM to linear. Software is developed for computing the solutions to acoustic scattering problems involving spheroids and disks. This software uses spheroidal wave functions to analytically build the solutions to these problems. This software is used to verify the accuracy of the BEM for the Helmholtz equation. The product of these contributions is a fast and accurate BEM solver for the Laplace and Helmholtz equations

    GPU Acceleration of a Non-Standard Finite Element Mesh Truncation Technique for Electromagnetics

    Get PDF
    The emergence of General Purpose Graphics Processing Units (GPGPUs) provides new opportunities to accelerate applications involving a large number of regular computations. However, properly leveraging the computational resources of graphical processors is a very challenging task. In this paper, we use this kind of device to parallelize FE-IIEE (Finite Element-Iterative Integral Equation Evaluation), a non-standard finite element mesh truncation technique introduced by two of the authors. This application is computationally very demanding due to the amount, size and complexity of the data involved in the procedure. Besides, an efficient implementation becomes even more difficult if the parallelization has to maintain the complex workflow of the original code. The proposed implementation using CUDA applies different optimization techniques to improve performance. These include leveraging the fastest memories of the GPU and increasing the granularity of the computations to reduce the impact of memory access. We have applied our parallel algorithm to two real radiation and scattering problems demonstrating speedups higher than 140 on a state-of-the-art GPU.This work was supported in part by the Spanish Government under Grant TEC2016-80386-P, Grant TIN2017-82972-R, and Grant ESP2015-68245-C4-1-P, and in part by the Valencian Regional Government under Grant PROMETEO/2019/109

    SkelFMM: A Simplified Fast Multipole Method Based on Recursive Skeletonization

    Full text link
    This work introduces the kernel-independent multi-level algorithm "skelFMM" for evaluating all pairwise interactions between NN points connected through a kernel such as the fundamental solution of the Laplace or the Helmholtz equations. The method is based on linear algebraic tools such as randomized low rank approximation and "skeleton representations" of far-field interactions. The work is related to previously proposed linear algebraic reformulations of the fast multipole method (FMM), but is distinguished by relying on simpler data structures. In particular, skelFMM does not require an "interaction list", as it relies instead on algebraically-modified kernel interactions between near-neighbors at every level. Like other kernel independent algorithms, it only requires evaluation of the kernel function, allowing the methodology to easily be extended to a range of different kernels in 2D and 3D. The simplicity of the algorithm makes it particularly amenable to parallel implementation on heterogeneous hardware architectures. The performance of the algorithm is demonstrated through numerical experiments conducted on uniform and non-uniform point distributions in 2D and 3D, involving Laplace and (low frequency) Helmholtz kernels. The algorithm relies on a precomputation stage that constructs a tailored representation for a given geometry of points. Once the precomputation has completed, the matrix-vector multiplication attains high speed through GPU acceleration that leverages batched linear algebra

    OpenMP-CUDA implementation of the moment method and multilevel fast multipole algorithm on multi-GPU computing systems

    Get PDF
    In this thesis, the method of moments (MoM) and the multilevel fast multipole algorithm (MLFMA) are implemented for GPU computation based on the hybrid OpenMP-CUDA parallel programming model. The resultant algorithms are called the OpenMP-CUDA-MoM and the OpenMP-CUDA-MLFMA, respectively. Both of the proposed methods are applied to compute electromagnetic scattering by a three-dimensional conducting object. For the OpenMP-CUDA-MoM, the multi-GPU parallelization of system matrix assembly, iterative solution, and fast evaluation of radar cross section (RCS) are discussed in detail. The parallel efficiency versus number of devices is investigated through the calculation of a conducting sphere on different number of GPUs. The parallel efficiency of the total computation is over 87%. The total speedup for the monostatic RCS calculation of a NASA almond by 4 GPUs is between 80 and 260 times. For the GPU accelerated MLFMA, the hierarchical parallelization strategy is employed, which ensures a high computational throughput for the GPU calculation. The resulting OpenMP-based multi-GPU implementation is capable of solving real-life problems with over 1 million unknowns with a remarkable speedup. The RCS of a few benchmark objects are calculated to demonstrate the accuracy of the solution. The results are compared with those from the CPU-based MLFMA and measurements. The capability of the proposed method is analyzed through the examples of a sphere, an aerocraft and a missile-like object. The total speedup achieved by 4 GPUs is between 20 and 80 times

    Software for Exascale Computing - SPPEXA 2016-2019

    Get PDF
    This open access book summarizes the research done and results obtained in the second funding phase of the Priority Program 1648 "Software for Exascale Computing" (SPPEXA) of the German Research Foundation (DFG) presented at the SPPEXA Symposium in Dresden during October 21-23, 2019. In that respect, it both represents a continuation of Vol. 113 in Springer’s series Lecture Notes in Computational Science and Engineering, the corresponding report of SPPEXA’s first funding phase, and provides an overview of SPPEXA’s contributions towards exascale computing in today's sumpercomputer technology. The individual chapters address one or more of the research directions (1) computational algorithms, (2) system software, (3) application software, (4) data management and exploration, (5) programming, and (6) software tools. The book has an interdisciplinary appeal: scholars from computational sub-fields in computer science, mathematics, physics, or engineering will find it of particular interest
    • …
    corecore