Skip to content

Add full support for parallelization backends#790

Merged
svchb merged 14 commits intotrixi-framework:mainfrom
efaulhaber:pointneighbors-0.6
May 8, 2025
Merged

Add full support for parallelization backends#790
svchb merged 14 commits intotrixi-framework:mainfrom
efaulhaber:pointneighbors-0.6

Conversation

@efaulhaber
Copy link
Copy Markdown
Member

@efaulhaber efaulhaber commented May 5, 2025

@efaulhaber efaulhaber self-assigned this May 5, 2025
@efaulhaber efaulhaber added the breaking changes This change will break the public API and requires a new major release label May 5, 2025
@codecov
Copy link
Copy Markdown

codecov bot commented May 7, 2025

Codecov Report

Attention: Patch coverage is 89.47368% with 2 lines in your changes missing coverage. Please review.

Project coverage is 70.62%. Comparing base (fb6906f) to head (1d1daa9).

Files with missing lines Patch % Lines
src/general/initial_condition.jl 50.00% 1 Missing ⚠️
test/schemes/solid/total_lagrangian_sph/rhs.jl 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #790      +/-   ##
==========================================
+ Coverage   70.61%   70.62%   +0.01%     
==========================================
  Files         103      103              
  Lines        6618     6611       -7     
==========================================
- Hits         4673     4669       -4     
+ Misses       1945     1942       -3     
Flag Coverage Δ
unit 70.62% <89.47%> (+0.01%) ⬆️

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.

@efaulhaber
Copy link
Copy Markdown
Member Author

/run-gpu-tests

@efaulhaber
Copy link
Copy Markdown
Member Author

/run-gpu-tests

@efaulhaber efaulhaber requested a review from Copilot May 8, 2025 12:48
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR adds full support for parallelization backends by updating threaded loops, modifying constructors, and adjusting example and documentation files to use explicit backend types rather than booleans.

  • Replace “@threaded positions…” with “@threaded default_backend(positions)” in various modules.
  • Update function signatures and type checks in semidiscretization to use explicit backend types.
  • Amend examples and documentation to use backend constructors (e.g., PolyesterBackend, SerialBackend) instead of primitive booleans.

Reviewed Changes

Copilot reviewed 31 out of 31 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/preprocessing/particle_packing/signed_distance.jl Updated threaded loop to use default_backend for FaceNeighborhoodSearch.
src/preprocessing/geometries/triangle_mesh.jl Updated threaded loops to use default_backend for face_vertices and vertices_sorted arrays.
src/general/semidiscretization.jl Modified the Semidiscretization constructor and semidiscretize function; now uses explicit parallelization_backend type checks.
src/general/neighborhood_search.jl Changed foreach_point_neighbor call to use the new parallelization_backend parameter.
src/general/initial_condition.jl Updated foreach_point_neighbor calls to use SerialBackend instead of a boolean flag.
src/TrixiParticles.jl Updated re-exports to include new backend types and default_backend.
Examples (various) Replaced boolean flag with explicit backend constructors for simulation setups.
docs/* Adjusted documentation and Project.toml to reflect the new backend usage.

Comment thread src/general/semidiscretization.jl
Comment thread examples/solid/oscillating_beam_2d.jl
Comment thread src/general/semidiscretization.jl
@efaulhaber
Copy link
Copy Markdown
Member Author

/run-gpu-tests

@efaulhaber efaulhaber marked this pull request as ready for review May 8, 2025 13:58
@efaulhaber efaulhaber requested a review from svchb May 8, 2025 13:59
@svchb svchb enabled auto-merge (squash) May 8, 2025 14:31
@svchb svchb merged commit d4e892b into trixi-framework:main May 8, 2025
14 of 16 checks passed
@efaulhaber efaulhaber deleted the pointneighbors-0.6 branch May 8, 2025 18:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking changes This change will break the public API and requires a new major release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants