Skip to content

Added GlobalDataInterface#228

Draft
hgangwar wants to merge 11 commits into
SCOREC:developfrom
hgangwar:add_GDI
Draft

Added GlobalDataInterface#228
hgangwar wants to merge 11 commits into
SCOREC:developfrom
hgangwar:add_GDI

Conversation

@hgangwar

Copy link
Copy Markdown
Contributor

This PR introduces redev::AdiosGlobalComm to provide a global communication interface between the coupler and the applications using the existing ADIOS channel.
Usage:

auto GDI = app->Add_GDI<pcms::GO>("global_comm", comm);

This creates a global communicator that can send and receive data, for example:

app->BeginSendPhase();
GDI->Send(mean.data(), "mean", mean.size());
app->EndSendPhase();

app->BeginReceivePhase();
mean = GDI->Receive("mean", mean.size());
app->EndReceivePhase();
  • The test_GDI test case verifies global communication and data transfer.
  • CMake fix to ensure the header file is installed in the expected include directory.

@jacobmerson

Copy link
Copy Markdown
Collaborator

@hgangwar and I discussed offline. The plan for this is to replace the GDI name with Data.

So, we will have something on the order of as follows:

app->AddData("mydata", ...);
app->BeginSendPhase();
app->SendData("mydata");
app->EndSendPhase();

app->BeginReceivePhase();
app->ReceiveData("mydata");
app->EndReceivePhase();

@hgangwar hgangwar mentioned this pull request Jul 13, 2026
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