Skip to content

Conversation

@benegee
Copy link
Contributor

@benegee benegee commented Sep 29, 2025

Add KernelAbstractions.jl kernels for basic rhs! functions for 3D P4estMesh implementation.

vchuravy and others added 30 commits May 14, 2025 09:36
In order to eventually support GPU computation we need
to use Adapt.jl to allow GPU backend packages to swap
out host-array types like `CuArray` with device-side types
like `CuDeviceArray`.

Additionally this will allow us to change the element type
of a simulation by using `adapt(Array{Float32}`.

Co-authored-by: Lars Christmann <[email protected]>
Co-authored-by: Benedict Geihe <[email protected]>
In order to eventually support GPU computation we need
to use Adapt.jl to allow GPU backend packages to swap
out host-array types like `CuArray` with device-side types
like `CuDeviceArray`.

Additionally this will allow us to change the element type
of a simulation by using `adapt(Array{Float32}`.

Co-authored-by: Lars Christmann <[email protected]>
Co-authored-by: Benedict Geihe <[email protected]>
@codecov
Copy link

codecov bot commented Sep 29, 2025

Codecov Report

❌ Patch coverage is 77.49361% with 88 lines in your changes missing coverage. Please review.
✅ Project coverage is 96.64%. Comparing base (f4bbcd9) to head (7c6ab4a).
⚠️ Report is 29 commits behind head on main.

Files with missing lines Patch % Lines
src/solvers/dgsem_p4est/dg_3d.jl 74.60% 32 Missing ⚠️
src/solvers/dgsem_structured/dg_3d.jl 44.12% 19 Missing ⚠️
src/callbacks_step/stepsize_dg3d.jl 71.11% 13 Missing ⚠️
src/callbacks_step/analysis_dg2d.jl 69.57% 7 Missing ⚠️
src/callbacks_step/analysis_dg3d.jl 69.57% 7 Missing ⚠️
src/solvers/dg.jl 60.00% 6 Missing ⚠️
src/callbacks_step/save_solution.jl 66.67% 1 Missing ⚠️
src/solvers/fdsbp_tree/fdsbp_1d.jl 83.33% 1 Missing ⚠️
src/solvers/fdsbp_tree/fdsbp_2d.jl 85.71% 1 Missing ⚠️
src/solvers/fdsbp_tree/fdsbp_3d.jl 85.71% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2590      +/-   ##
==========================================
- Coverage   96.80%   96.64%   -0.17%     
==========================================
  Files         528      528              
  Lines       42655    42775     +120     
==========================================
+ Hits        41292    41337      +45     
- Misses       1363     1438      +75     
Flag Coverage Δ
unittests 96.64% <77.49%> (-0.17%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

max_lambda1 + max_lambda2 + max_lambda3)
end
# TODO GPU dt on CPU? (time integration happens on CPU)
max_scaled_speed = max(nextfloat(zero(t)), maximum(max_scaled_speeds))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we write this as a mapreduce? E.g. something like:

AcceleratedKernels.mapreduce(max, 1:num_elements, backend) do element
    max_scaled_speed_element(u, meshT, equations, dg,
                                                          contravariant_vectors,
                                                          inverse_jacobian,
                                                          element)
end

AcceleratedKernels does use Polyester for it's mapreduce on the CPU IIRC (grrml) so we could test the performance against @batch, another alternative is tmapreduce from OhMyThreads.

benegee and others added 12 commits October 7, 2025 18:07
commit f4bbcd9
Author: Daniel Doehring <[email protected]>
Date:   Sun Oct 5 08:33:38 2025 +0200

    Comment `temperature` and /3 (#2594)

    ---------

    Co-authored-by: Hendrik Ranocha <[email protected]>

commit 68c0c71
Author: Daniel Doehring <[email protected]>
Date:   Fri Oct 3 15:06:55 2025 +0200

    Second-Order Finite Volume Integral in 1D (#2022)

    * Pick up where Gregor left

    * preliminary example

    * more limiters

    * comments

    * fmt

    * continue

    * comments

    * print some more info

    * Add unit tests

    * add comment

    * Remove some alternative limiter implementations.

    * move, comments, fmt

    * Use second order timestepping

    * debug superbee

    * prim2cons 1D Adv

    * test

    * fmt, typo

    * typos

    * some more tests

    * fmt

    * Update src/solvers/dgsem_tree/finite_volume_O2.jl

    * Update test/test_unit.jl

    * Update src/solvers/dgsem_tree/dg_1d.jl

    * fmt

    * add different recontruction mode

    * Update src/solvers/dgsem_tree/finite_volume_O2.jl

    Co-authored-by: Andrés Rueda-Ramírez <[email protected]>

    * test + fmt

    * comments

    * correct way cells dim

    * increase coverage

    * revisit

    * continue

    * fmt

    * shorten

    * extra test

    * comment "inverse_weights"

    * change files

    * test vals

    * Update test/test_tree_1d_euler.jl

    * Update examples/structured_1d_dgsem/elixir_euler_source_terms_nonperiodic_fvO2.jl

    * Update examples/tree_1d_dgsem/elixir_euler_convergence_pure_fvO2.jl

    * Update test/test_tree_1d_euler.jl

    * fix

    * test compact print

    * comment

    * relabel

    * comments

    * comments

    * comemnts

    * commenbts

    * rm

    * test

    * rename

    * docstrings

    * comments

    * Apply suggestions from code review

    Co-authored-by: Joshua Lampert <[email protected]>

    * fmt

    * fmt

    * mv

    * fix

    * Apply suggestions from code review

    Co-authored-by: Joshua Lampert <[email protected]>

    ---------

    Co-authored-by: Andrés Rueda-Ramírez <[email protected]>
    Co-authored-by: Joshua Lampert <[email protected]>

commit 96c7aef
Author: Daniel Doehring <[email protected]>
Date:   Thu Oct 2 18:19:13 2025 +0200

    Bundle identical `rhs!` (#2552)

    * Bundle identical `rhs!`

    * fix 1d

    * comment

    * bring back

    ---------

    Co-authored-by: Hendrik Ranocha <[email protected]>

commit 5c97803
Author: Daniel Doehring <[email protected]>
Date:   Thu Oct 2 15:39:55 2025 +0200

    Use variable name `have_nonconservative_terms` (#2592)

    * Use variable name `have_nonconservative_terms`

    * fix

    * cons fmt

    ---------

    Co-authored-by: Benedict <[email protected]>
    Co-authored-by: Hendrik Ranocha <[email protected]>

commit 2688623
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Date:   Thu Oct 2 08:10:10 2025 +0200

    Bump crate-ci/typos from 1.35.7 to 1.37.1 (#2593)

    * Bump crate-ci/typos from 1.35.7 to 1.37.1

    Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.35.7 to 1.37.1.
    - [Release notes](https://github.com/crate-ci/typos/releases)
    - [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
    - [Commits](crate-ci/typos@v1.35.7...v1.37.1)

    ---
    updated-dependencies:
    - dependency-name: crate-ci/typos
      dependency-version: 1.37.1
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...

    Signed-off-by: dependabot[bot] <[email protected]>

    * fix typos

    ---------

    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Joshua Lampert <[email protected]>
Co-authored-by: Valentin Churavy <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants