Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
sparseXchg.hpp File Reference
#include "shambase/assert.hpp"
#include "shambase/exception.hpp"
#include "shambase/integer.hpp"
#include "shambase/stacktrace.hpp"
#include "shambase/string.hpp"
#include "shambase/time.hpp"
#include "shamalgs/collective/exchanges.hpp"
#include "shamalgs/collective/gather_str.hpp"
#include "shamalgs/collective/reduction.hpp"
#include "shamalgs/serialize.hpp"
#include "shambackends/comm/CommunicationBuffer.hpp"
#include "shambackends/math.hpp"
#include "shambackends/typeAliasVec.hpp"
#include "shamcomm/logs.hpp"
#include "shamcomm/mpiErrorCheck.hpp"
#include "shamcomm/worldInfo.hpp"
#include "shamcomm/wrapper.hpp"
#include <string_view>
#include <functional>
#include <mpi.h>
#include <stdexcept>
#include <string>
#include <thread>
#include <vector>
Include dependency graph for sparseXchg.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  shamalgs::collective::SendPayload
struct  shamalgs::collective::RecvPayload
struct  shamalgs::collective::SparseCommTable

Namespaces

namespace  shamalgs
 namespace to contain everything implemented by shamalgs

Functions

void shamalgs::collective::sparse_comm_debug_infos (std::shared_ptr< sham::DeviceScheduler > dev_sched, const std::vector< SendPayload > &message_send, std::vector< RecvPayload > &message_recv, const SparseCommTable &comm_table)
void shamalgs::collective::sparse_comm_isend_probe_count_irecv (std::shared_ptr< sham::DeviceScheduler > dev_sched, const std::vector< SendPayload > &message_send, std::vector< RecvPayload > &message_recv, const SparseCommTable &comm_table)
void shamalgs::collective::sparse_comm_allgather_isend_irecv (std::shared_ptr< sham::DeviceScheduler > dev_sched, const std::vector< SendPayload > &message_send, std::vector< RecvPayload > &message_recv, const SparseCommTable &comm_table)
void shamalgs::collective::sparse_comm_c (std::shared_ptr< sham::DeviceScheduler > dev_sched, const std::vector< SendPayload > &message_send, std::vector< RecvPayload > &message_recv, const SparseCommTable &comm_table)
void shamalgs::collective::base_sparse_comm (std::shared_ptr< sham::DeviceScheduler > dev_sched, const std::vector< SendPayload > &message_send, std::vector< RecvPayload > &message_recv)
void shamalgs::collective::base_sparse_comm_max_comm (std::shared_ptr< sham::DeviceScheduler > dev_sched, std::vector< SendPayload > &message_send, std::vector< RecvPayload > &message_recv, u32 max_simultaneous_send)

Detailed Description

Author
Timothée David–Cléris (tim.s.nosp@m.hamr.nosp@m.ock@p.nosp@m.roto.nosp@m.n.me)

Definition in file sparseXchg.hpp.

Function Documentation

◆ base_sparse_comm()

void shamalgs::collective::base_sparse_comm ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
const std::vector< SendPayload > & message_send,
std::vector< RecvPayload > & message_recv )
inline

Definition at line 104 of file sparseXchg.hpp.

◆ base_sparse_comm_max_comm()

void shamalgs::collective::base_sparse_comm_max_comm ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
std::vector< SendPayload > & message_send,
std::vector< RecvPayload > & message_recv,
u32 max_simultaneous_send )
inline

Definition at line 117 of file sparseXchg.hpp.

◆ sparse_comm_allgather_isend_irecv()

void shamalgs::collective::sparse_comm_allgather_isend_irecv ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
const std::vector< SendPayload > & message_send,
std::vector< RecvPayload > & message_recv,
const SparseCommTable & comm_table )

Definition at line 397 of file sparseXchg.cpp.

◆ sparse_comm_c()

void shamalgs::collective::sparse_comm_c ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
const std::vector< SendPayload > & message_send,
std::vector< RecvPayload > & message_recv,
const SparseCommTable & comm_table )
inline

Definition at line 93 of file sparseXchg.hpp.

◆ sparse_comm_debug_infos()

void shamalgs::collective::sparse_comm_debug_infos ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
const std::vector< SendPayload > & message_send,
std::vector< RecvPayload > & message_recv,
const SparseCommTable & comm_table )

Definition at line 237 of file sparseXchg.cpp.

◆ sparse_comm_isend_probe_count_irecv()

void shamalgs::collective::sparse_comm_isend_probe_count_irecv ( std::shared_ptr< sham::DeviceScheduler > dev_sched,
const std::vector< SendPayload > & message_send,
std::vector< RecvPayload > & message_recv,
const SparseCommTable & comm_table )

Definition at line 309 of file sparseXchg.cpp.