One of the current challenges in physically-based simulations, and, more specifically, fluid simulations, is to produce visually appealing results at interactive rates, capable of being used in multiple forms of media. In recent times, a lot of effort has been made with regards to this with the use of multi-core architectures, as many of the computations involved in the algorithms for these simulations are very well suited for these architectures. Although there is a considerable amount of works regarding acceleration techniques in this field, there is yet room to further explore and analyze some of them. To investigate this problem, we surveyed the topic of fluid simulations and some of the recent contributions towards this field. Additionally, we implemented two versions of a fluid simulation algorithm, one on the CPU and the other on the GPU using NVIDIA's CUDA framework, with the intent of gaining a better understanding of the effort needed to move these simulations to a multi-core architecture and the performance gains that we get with it.
翻译:当前基于物理的仿真(尤其是流体仿真)面临的一大挑战是如何在交互速率下生成视觉上令人满意的结果,使其能够应用于多种媒体形式。近年来,随着多核架构的广泛应用,该领域取得了大量进展,因为此类仿真算法中的许多计算任务非常适合这种架构。尽管已有相当数量的研究工作聚焦于该领域的加速技术,但仍存在进一步探索与分析的空间。为探究此问题,我们系统调研了流体仿真主题及其最新研究进展。此外,我们实现了两种版本的流体仿真算法——分别基于CPU和NVIDIA的CUDA框架在GPU上运行,旨在深入理解将此类仿真迁移至多核架构所需的工作量及其性能提升。