一个基于Python的流程解决程序,用于在单个GPU上使用沉浸边界方法进行数值模拟
M Guerrero-Hurtado1, J M Catalán1, M Moriche2
1Department of Aerospace Engineering, Universidad Carlos III de Madrid, Spain.
概括
沉浸式边界方法的新单个GPU实现显著加速3D不可压缩的流量模拟. 这种高效的方法为复杂的几何形状提供了实质性的加速度,超过CPU解决方案的54倍.
科学领域:
- 计算流体动力学 计算流体动力学
- 高性能计算的高性能计算.
- 数字模拟 数字模拟
背景情况:
- 在复杂的几何形状周围模拟三维不可压缩的流量是计算密集的.
- 现有的方法经常面临挑战,因为并行处理时的通信开销很高.
研究的目的:
- 开发一种高效的单个GPU实现,用于模拟具有复杂几何形状的移动物体周围不可压缩的流量.
- 通过利用GPU架构和沉浸式边界方法来优化性能.
主要方法:
- 针对使用Nvidia CUDA,Numba和Python的GPU量身定制的沉浸式边界方法的实施.
- 利用不同的GPU网格架构来优化性能.
- 专注于单个GPU执行,以消除通信开销,并将数据保存在全球内存中.
主要成果:
- 与基于CPU的并行解析器相比,单个GPU代码实现了34到54倍的加快速度.
- 在解决线性系统中观察到显著的加速度,在非线性术语计算 (×1.6-3) 中获得了更适度的收益.
- 该代码在不同的GPU硬件上展示了强大的扩展,用于外部 (生物灵感的空气动力学) 和内部 (心血管) 流量应用.
结论:
- 开发的单个GPU实现为复杂的流体流动模拟提供了高效的解决方案.
- 这种方法比传统的基于CPU的方法提供了显著的性能改善.
- 该方法得到了验证,适用于各种流体动力学问题,包括生物灵感和心血管流.
相关概念视频
Turbulent Flow: Problem Solving
375
Carbonation is a process used to dissolve carbon dioxide gas in a liquid, commonly used in the production of carbonated beverages. Achieving efficient carbonation requires careful control of temperature, pressure, and flow conditions. By adjusting these parameters, carbonation efficiency can be maximized, producing a higher concentration of CO2 in the liquid.
Temperature is a key factor in CO2 solubility. In this case, the CO2 gas and the liquid are cooled to 20°C. Lower temperatures enhance...
Temperature is a key factor in CO2 solubility. In this case, the CO2 gas and the liquid are cooled to 20°C. Lower temperatures enhance...
375
Laminar Flow: Problem Solving
495
Laminar flow occurs when a fluid moves smoothly in parallel layers with minimal mixing and turbulence. In fluid mechanics, ensuring laminar flow within a pipe is essential for precise control of flow characteristics, especially in engineering applications. The key factor in determining whether flow remains laminar is the Reynolds number, a dimensionless quantity that depends on the fluid's velocity, density, viscosity, and the pipe's diameter. A Reynolds number of 2100 or lower...
495
Uniform Depth Channel Flow: Problem Solving
424
To calculate the flow rate for a trapezoidal channel, first, identify the bottom width, side slope, and flow depth of the channel. The cross-sectional area (A) corresponding to the depth of flow (y), channel bottom width (B), and side slope (θ) is determined by:Next, calculate the wetted perimeter, which includes the bottom width and the sloped side lengths in contact with the water. Using the values of the cross-sectional area and the wetted perimeter, determine the hydraulic radius by...
424
Accelerating Fluids
2.1K
When a fluid is in constant acceleration, the pressure and buoyant force equations are modified. Suppose a beaker is placed in an elevator accelerating upward with a constant acceleration, a. In the beaker, assume there is a thin cylinder of height h with an infinitesimal cross-sectional area, ΔS.
The motion of the liquid within this infinitesimal cylinder is considered to obtain the pressure difference. Three vertical forces act on this liquid:
The motion of the liquid within this infinitesimal cylinder is considered to obtain the pressure difference. Three vertical forces act on this liquid:
2.1K
Newtonian Fluid: Problem Solving
850
Newtonian fluids exhibit a constant viscosity, meaning their shear stress and shear strain rate are directly proportional. This property ensures a predictable and stable response to applied forces, maintaining a linear relationship between force and flow. Examples include water, air, and light oils, consistently demonstrating this proportional behavior regardless of external conditions.
A velocity gradient forms within the fluid when a Newtonian fluid is placed between two parallel plates, with...
A velocity gradient forms within the fluid when a Newtonian fluid is placed between two parallel plates, with...
850
Laminar and Turbulent Flow
10.5K
Fluid dynamics is the study of fluids in motion. Velocity vectors are often used to illustrate fluid motion in applications like meteorology. For example, wind—the fluid motion of air in the atmosphere—can be represented by vectors indicating the speed and direction of the wind at any given point on a map. Another method for representing fluid motion is a streamline. A streamline represents the path of a small volume of fluid as it flows. When the flow pattern changes with time, the...
10.5K


