Table of Contents
Fetching ...

Contiguous Storage of Grid Data for Heterogeneous Computing

Fan Gu, Xiangyu Hu

TL;DR

This work delivers a GPU-friendly, SYCL-based sparse-grid storage architecture tailored for heterogeneous computing. By introducing MeshWithGridDataPackages, array-based data layouts, neighborhood indexing, and a unified execution model, it achieves improved portability and scalability for sparse-grid and grid-particle simulations. Key contributions include a concurrent, device-agnostic kernel framework, multi-resolution level-set construction, and GPU-accelerated level-set cleaning and SPH coupling, yielding memory savings and performance gains over CPU-optimized baselines. The approach promises easier end-user adoption and better performance on modern heterogeneous hardware for complex simulations that rely on sparse grids and level-set methods.

Abstract

Structured Cartesian grids are a fundamental component in numerical simulations. Although these grids facilitate straightforward discretization schemes, their naïve use in sparse domains leads to excessive memory overhead and inefficient computation. Existing frameworks address are primarily optimized for CPU execution and exhibit performance bottlenecks on GPU architectures due to limited parallelism and high memory access latency. This work presents a redesigned storage architecture optimized for GPU compatibility and efficient execution across heterogeneous platforms. By abstracting low-level GPU-specific details and adopting a unified programming model based on SYCL, the proposed data structure enables seamless integration across host and device environments. This architecture simplifies GPU programming for end-users while improving scalability and portability in sparse-grid and gird-particle coupling numerical simulations.

Contiguous Storage of Grid Data for Heterogeneous Computing

TL;DR

This work delivers a GPU-friendly, SYCL-based sparse-grid storage architecture tailored for heterogeneous computing. By introducing MeshWithGridDataPackages, array-based data layouts, neighborhood indexing, and a unified execution model, it achieves improved portability and scalability for sparse-grid and grid-particle simulations. Key contributions include a concurrent, device-agnostic kernel framework, multi-resolution level-set construction, and GPU-accelerated level-set cleaning and SPH coupling, yielding memory savings and performance gains over CPU-optimized baselines. The approach promises easier end-user adoption and better performance on modern heterogeneous hardware for complex simulations that rely on sparse grids and level-set methods.

Abstract

Structured Cartesian grids are a fundamental component in numerical simulations. Although these grids facilitate straightforward discretization schemes, their naïve use in sparse domains leads to excessive memory overhead and inefficient computation. Existing frameworks address are primarily optimized for CPU execution and exhibit performance bottlenecks on GPU architectures due to limited parallelism and high memory access latency. This work presents a redesigned storage architecture optimized for GPU compatibility and efficient execution across heterogeneous platforms. By abstracting low-level GPU-specific details and adopting a unified programming model based on SYCL, the proposed data structure enables seamless integration across host and device environments. This architecture simplifies GPU programming for end-users while improving scalability and portability in sparse-grid and gird-particle coupling numerical simulations.

Paper Structure

This paper contains 19 sections, 6 figures, 1 table.

Figures (6)

  • Figure 1: Particle generation from an extruded prism. The gray surface indicates the clipped zero level set, the framed boxes indicate the core data package blocks used to describe the surface and the small spheres indicate the SPH particles generated and physically relaxed for later numerical simulation.
  • Figure 2: Level-set field with narrow band data-package storage: ‘inner packages’(light blue cells) and ‘core packages’(dark blue cells) around the surface. $l_{c}$ indicates the coarse cell size of the background mesh. The far field negative and positive represent the far regions within and outside the body surface.
  • Figure 3: STL triangle mesh of a gear. The leaking regions are indicated with yellow lines.
  • Figure 4: Corrected level-set field, zero-level contour and the finally generated SPH particles. The zero-level contour is colored with green.
  • Figure 5: Geometric model of a heat exchanger. (left) the entire model. (right) a cross-section view indicting very small features.
  • ...and 1 more figures