← Documentation
ADS-IDAC Engine 5.0.0
Client.h File Reference

MPI client (rank > 0): executes simulation sequences. More...

#include <mpi.h>
#include "ParallelUtilities.h"
#include "ParallelGlobal.h"
#include "../Solver/ThermalHydraulicSolver.h"
#include "../Solver/AdsidacCallback.h"
#include <filesystem>
#include <memory>
#include <unordered_map>
Include dependency graph for Client.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Client
 MPI worker client that executes simulation sequences. More...
 
struct  Client::HeldBranchData
 Data held locally for deferred peer-to-peer transfer. More...
 

Typedefs

using PU = ParallelUtilities
 

Detailed Description

MPI client (rank > 0): executes simulation sequences.

Each client owns a solver (RelapSolver, or RestApiSolver when a solver URL is configured) and writes its outputs under its own rank_N/Output/. Messages handled by Work():

  • client_simulate_this: run the initial sequence (sequence 0).
  • client_peer_restart: receive restart data directly from a donor client and run that branch.
  • client_send_to_peer: send a held branch to the client the server names.
  • client_run_held: run a held branch on this client.
  • client_restart_run: run a pending task of a resumed checkpoint with data sent by the server.
  • client_checkpoint: send all held branch data to the server.
  • client_shutdown: clean up, self-merge outputs under –merge=now, return. A new branch point is announced to the server as metadata only (server_branch_meta, sent from AdsidacCallback::onBranchingPoint); the restart data stays on this client until a peer is assigned.

Definition in file Client.h.

Typedef Documentation

◆ PU

using PU = ParallelUtilities

Definition at line 35 of file Client.h.