rtx-cfd legacy GPU: the kernel-writing methods take &mut self; read-only ones keep a shared borrow
CI / Format Check (push) Failing after 6s
Performance Benchmarks / Run Benchmarks (push) Failing after 7s
CI / Clippy Check (push) Failing after 11s
CI / Build (ubuntu-latest) (push) Failing after 13s
Documentation / Build User Guide (push) Successful in 6s
Documentation / Build API Documentation (push) Failing after 23s
CI / Build CPU-Only (Explicit) (push) Failing after 2m0s
CI / Build (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (macos-latest) (push) Canceled after 0s
CI / Python Bindings (maturin) (ubuntu-latest) (push) Canceled after 0s
CI / Test (macos-latest) (push) Canceled after 0s
CI / Test (ubuntu-latest) (push) Canceled after 0s
CI / WASM Build + Size Check (push) Canceled after 0s
CI / Distributed Training Tests (push) Canceled after 0s
CI / CI Success (push) Canceled after 0s

This commit is contained in:
Omar Sobh
2026-09-16 07:29:05 -05:00
parent 0de750bad1
commit fd5972c949
5 changed files with 32 additions and 32 deletions
@@ -362,7 +362,7 @@ __global__ void d3q19_bounce_back_boundaries(
}
/// GPU-accelerated BGK collision step
pub fn gpu_collision_step(&self) -> CfdResult<()> {
pub fn gpu_collision_step(&mut self) -> CfdResult<()> {
let buffers = self
.gpu_buffers
.as_mut()
@@ -416,7 +416,7 @@ __global__ void d3q19_bounce_back_boundaries(
}
/// GPU-accelerated streaming step
pub fn gpu_streaming_step(&self) -> CfdResult<()> {
pub fn gpu_streaming_step(&mut self) -> CfdResult<()> {
let buffers = self
.gpu_buffers
.as_mut()
@@ -462,7 +462,7 @@ __global__ void d3q19_bounce_back_boundaries(
}
/// Extract macroscopic variables on GPU
fn gpu_extract_macroscopic_variables(&self) -> CfdResult<()> {
fn gpu_extract_macroscopic_variables(&mut self) -> CfdResult<()> {
let buffers = self
.gpu_buffers
.as_mut()
@@ -517,7 +517,7 @@ __global__ void d3q19_bounce_back_boundaries(
}
/// Compute equilibrium distributions on GPU
fn gpu_compute_equilibrium(&self) -> CfdResult<()> {
fn gpu_compute_equilibrium(&mut self) -> CfdResult<()> {
let buffers = self
.gpu_buffers
.as_mut()
@@ -564,7 +564,7 @@ __global__ void d3q19_bounce_back_boundaries(
}
/// GPU-accelerated bounce-back boundary conditions
pub fn gpu_apply_bounce_back_boundaries(&self) -> CfdResult<()> {
pub fn gpu_apply_bounce_back_boundaries(&mut self) -> CfdResult<()> {
let buffers = self
.gpu_buffers
.as_mut()
@@ -675,7 +675,7 @@ __global__ void d3q19_bounce_back_boundaries(
) -> CfdResult<MacroscopicVariables3D> {
let buffers = self
.gpu_buffers
.as_mut()
.as_ref()
.ok_or_else(|| CfdError::gpu_error("GPU buffers not initialized"))?;
// Extract macroscopic variables first
@@ -726,7 +726,7 @@ __global__ void d3q19_bounce_back_boundaries(
pub fn gpu_total_mass(&self) -> CfdResult<f64> {
let buffers = self
.gpu_buffers
.as_mut()
.as_ref()
.ok_or_else(|| CfdError::gpu_error("GPU buffers not initialized"))?;
self.gpu_extract_macroscopic_variables()?;
@@ -739,7 +739,7 @@ __global__ void d3q19_bounce_back_boundaries(
pub fn gpu_kinetic_energy(&self) -> CfdResult<f64> {
let buffers = self
.gpu_buffers
.as_mut()
.as_ref()
.ok_or_else(|| CfdError::gpu_error("GPU buffers not initialized"))?;
self.gpu_extract_macroscopic_variables()?;