Skip to content

Conversation

@sambitmishra98
Copy link
Contributor

@sambitmishra98 sambitmishra98 commented Oct 6, 2025

This PR adds an opt-in path to redistribute element-indexed data from the solver’s mesh partitioning to a separate plugin partitioning. Set partition = in a plugin’s (e.g., writer or tavg) config block to load that partition for the plugin; the runtime will build an interconnector from the compute mesh to the plugin mesh and relocate array data across ranks before outputting to disk. If partition is omitted, behavior is unchanged and data is written using the compute partition. For now, ensure all writer/tavg plugins reference the same partition name.

@sambitmishra98 sambitmishra98 changed the title Use a different partition for plugins. [WIP] Use a different partition for plugins. Oct 6, 2025
@FreddieWitherden
Copy link
Contributor

So we really want to make this 100% transparent for the plugins. As in rework the plugin architecture a little so that this PR would not require plugins to opt in at all. A good test for this is the Ascent plugin.

We also want to handle the case where multiple plugins use the same data (solution etc.) with the same partitioning and avoid having to send it over again.

@sambitmishra98
Copy link
Contributor Author

I will add in an extra CLI argument to run/restart similar to the way we ask for a partition, instead of using the config file.

@FreddieWitherden
Copy link
Contributor

It can still be in the ini file, just handled by BasePlugin. Key thing is all plugins should work with zero changes needed.

@sambitmishra98 sambitmishra98 force-pushed the feature/online-relocate-plugins branch from bf1af8e to 8da49df Compare October 7, 2025 14:41
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.

2 participants