Skip to content

feat: [WIP] Reconstruct neighbour mesh locally 2 #314

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 19 commits into
base: master
Choose a base branch
from

Conversation

sbstndb
Copy link
Contributor

@sbstndb sbstndb commented Apr 22, 2025

Description

This PR is based on #307 so please review the PR#307 before

feat: reconstruct the cells_and_ghost neighbourhood

        -       Before: we send/recv the neighbourhood cells_and_ghosts
        -       But we can avoid MPI comms by reconstructing it locally

        -       At this point, the advection-2d case works fine

Related issue

How has this been tested?

advection-2d

Code of Conduct

By submitting this PR, you agree to follow our Code of Conduct

  • I agree to follow this project's Code of Conduct

sbstndb added 16 commits April 16, 2025 14:44
	-	Before, we only are able to send the whole mesh structure
	-	For performance reasons, we should only send a part of it
	-	So here are the correspondinf functiosn that send only cells[id] of m_subdomain
	-	TODO : delete update_mesh function
	-	TODO : factorize the two functions for cells[id] and subdomain. It is maybe more complex
	-	Previously, we send the whole mesh structure
	-	But it is not needed.
	-	Here are the modified sends reduced in size that improve the performance
	-	Add definition
	-	Add template mesh_id_t properly
	-	Add non-const to be able to write with operator[]
	-	TODO : is it preferable to use a setter to preserve the [] as const ?
	-	Before: we send/recv the neighbourhood cells_and_ghosts
	-	But we can avoid MPI comms by reconstructing it locally

	-	At this point, the advection-2d case works fine
	-	I suggest decompose the mesh_id steps in subfunctions
	-	This is now easier to reconstruct the subdomain mesh locally !!
	-	For each subdomain, we reconstruct cells_and_ghosts_ and reference and prijection.
	-	TODO : there is a segfault for the periodic one.
	-	For now, lets check without periodic
@sbstndb
Copy link
Contributor Author

sbstndb commented Apr 23, 2025

At this point, this PR works at least for advection-2D.
TODO :

  • avoid multiple all_reduce !
  • resolve the segfault in the construct_periodic_cells
  • git rebase
  • remove compilation warnings

sbstndb added 3 commits April 23, 2025 19:47
	-	Now only for the rank mesh
	-	TODO : resolve the issue when launched for the neighbour mesh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant