![]() |
Shamrock 2025.10.0
Astrophysical Code
|
#include "shamalgs/collective/sparse_exchange.hpp"#include "shambase/exception.hpp"#include "shambase/memory.hpp"#include "shambase/narrowing.hpp"#include "shambase/stacktrace.hpp"#include "shamalgs/collective/RequestList.hpp"#include "shamalgs/collective/exchanges.hpp"#include "shambackends/USMPtrHolder.hpp"#include "shambackends/fmt_bindings/fmt_defs.hpp"#include "shambackends/math.hpp"#include "shamcomm/mpi.hpp"#include "shamcomm/worldInfo.hpp"#include <stdexcept>
Include dependency graph for sparse_exchange.cpp:Go to the source code of this file.
Namespaces | |
| namespace | shamalgs |
| namespace to contain everything implemented by shamalgs | |
Functions | |
| CommMessageInfo | shamalgs::collective::unpack (u64_2 comm_info) |
| std::vector< u64_2 > | shamalgs::collective::fetch_global_message_data (const std::vector< CommMessageInfo > &messages_send) |
| fetch u64_2 from global message data | |
| std::vector< CommMessageInfo > | shamalgs::collective::decode_all_message (const std::vector< u64_2 > &global_data) |
| decode message to get message | |
| void | shamalgs::collective::compute_tags (std::vector< CommMessageInfo > &message_all) |
| compute message tags | |
| CommTable | shamalgs::collective::build_sparse_exchange_table (const std::vector< CommMessageInfo > &messages_send, size_t max_alloc_size) |
| void | shamalgs::collective::sparse_exchange (std::shared_ptr< sham::DeviceScheduler > dev_sched, const std::vector< const u8 * > &bytebuffer_send, const std::vector< u8 * > &bytebuffer_recv, const CommTable &comm_table) |
| template<sham::USMKindTarget target> | |
| void | shamalgs::collective::sparse_exchange (std::shared_ptr< sham::DeviceScheduler > dev_sched, std::vector< std::unique_ptr< sham::DeviceBuffer< u8, target > > > &bytebuffer_send, std::vector< std::unique_ptr< sham::DeviceBuffer< u8, target > > > &bytebuffer_recv, const CommTable &comm_table) |
| template void | shamalgs::collective::sparse_exchange< sham::device > (std::shared_ptr< sham::DeviceScheduler > dev_sched, std::vector< std::unique_ptr< sham::DeviceBuffer< u8, sham::device > > > &bytebuffer_send, std::vector< std::unique_ptr< sham::DeviceBuffer< u8, sham::device > > > &bytebuffer_recv, const CommTable &comm_table) |
| template void | shamalgs::collective::sparse_exchange< sham::host > (std::shared_ptr< sham::DeviceScheduler > dev_sched, std::vector< std::unique_ptr< sham::DeviceBuffer< u8, sham::host > > > &bytebuffer_send, std::vector< std::unique_ptr< sham::DeviceBuffer< u8, sham::host > > > &bytebuffer_recv, const CommTable &comm_table) |
Definition in file sparse_exchange.cpp.
| CommTable shamalgs::collective::build_sparse_exchange_table | ( | const std::vector< CommMessageInfo > & | messages_send, |
| size_t | max_alloc_size | ||
| ) |
Definition at line 113 of file sparse_exchange.cpp.
| void shamalgs::collective::compute_tags | ( | std::vector< CommMessageInfo > & | message_all | ) |
compute message tags
Definition at line 96 of file sparse_exchange.cpp.
Here is the call graph for this function:| std::vector< CommMessageInfo > shamalgs::collective::decode_all_message | ( | const std::vector< u64_2 > & | global_data | ) |
decode message to get message
Definition at line 86 of file sparse_exchange.cpp.
Here is the call graph for this function:| std::vector< u64_2 > shamalgs::collective::fetch_global_message_data | ( | const std::vector< CommMessageInfo > & | messages_send | ) |
fetch u64_2 from global message data
Definition at line 57 of file sparse_exchange.cpp.
Here is the call graph for this function:| void shamalgs::collective::sparse_exchange | ( | std::shared_ptr< sham::DeviceScheduler > | dev_sched, |
| const std::vector< const u8 * > & | bytebuffer_send, | ||
| const std::vector< u8 * > & | bytebuffer_recv, | ||
| const CommTable & | comm_table | ||
| ) |
Definition at line 247 of file sparse_exchange.cpp.
| void shamalgs::collective::sparse_exchange | ( | std::shared_ptr< sham::DeviceScheduler > | dev_sched, |
| std::vector< std::unique_ptr< sham::DeviceBuffer< u8, target > > > & | bytebuffer_send, | ||
| std::vector< std::unique_ptr< sham::DeviceBuffer< u8, target > > > & | bytebuffer_recv, | ||
| const CommTable & | comm_table | ||
| ) |
Definition at line 296 of file sparse_exchange.cpp.
| CommMessageInfo shamalgs::collective::unpack | ( | u64_2 | comm_info | ) |
Definition at line 32 of file sparse_exchange.cpp.