#include <cuda_internal.h>
|
| | GPUIndirectChannel (GPU *_src_gpu, XferDesKind _kind, BackgroundWorkManager *bgwork) |
| |
| | ~GPUIndirectChannel () |
| |
| virtual bool | needs_wrapping_iterator () const |
| |
| virtual Memory | suggest_ib_memories () const |
| |
| virtual RemoteChannelInfo * | construct_remote_info () const |
| |
| virtual uint64_t | supports_path (ChannelCopyInfo channel_copy_info, CustomSerdezID src_serdez_id, CustomSerdezID dst_serdez_id, ReductionOpID redop_id, size_t total_bytes, const std::vector< size_t > *src_frags, const std::vector< size_t > *dst_frags, XferDesKind *kind_ret=0, unsigned *bw_ret=0, unsigned *lat_ret=0) |
| |
| virtual bool | supports_indirection_memory (Memory mem) const |
| | Queries if a given mem can be used as an indirection buffer.
|
| |
| virtual XferDes * | create_xfer_des (uintptr_t dma_op, NodeID launch_node, XferDesID guid, const std::vector< XferDesPortInfo > &inputs_info, const std::vector< XferDesPortInfo > &outputs_info, int priority, XferDesRedopInfo redop_info, const void *fill_data, size_t fill_size, size_t fill_total) |
| |
| long | submit (Request **requests, long nr) |
| |
| GPU * | get_gpu () const |
| |
| | SingleXDQChannel (BackgroundWorkManager *bgwork, XferDesKind _kind, const std::string &_name, int _numa_domain=-1) |
| |
| virtual void | shutdown () |
| |
| virtual void | enqueue_ready_xd (XferDes *xd) |
| |
| virtual void | wakeup_xd (XferDes *xd) |
| |
| void | pull () |
| |
| long | available () |
| |
| virtual long | progress_xd (XferDes *xd, long max_nr) |
| |
| | LocalChannel (XferDesKind _kind) |
| |
| virtual XferDesFactory * | get_factory () |
| |
| | Channel (XferDesKind _kind) |
| |
| virtual | ~Channel () |
| |
| virtual bool | supports_redop (ReductionOpID redop_id) const |
| |
| const std::vector< SupportedPath > & | get_paths (void) const |
| |
| void | update_channel_state (void) |
| |
| virtual Memory | suggest_ib_memories_for_node (NodeID node) const |
| |
| void | print (std::ostream &os) const |
| |
|
| NodeID | node |
| |
| XferDesKind | kind |
| |
| bool | has_redop_path {false} |
| |
| bool | has_non_redop_path {false} |
| |
| SupportedPath & | add_path (span< const Memory > src_mems, span< const Memory > dst_mems, unsigned bandwidth, unsigned latency, unsigned frag_overhead, XferDesKind xd_kind) |
| |
| SupportedPath & | add_path (span< const Memory > src_mems, Memory::Kind dst_kind, bool dst_global, unsigned bandwidth, unsigned latency, unsigned frag_overhead, XferDesKind xd_kind) |
| |
| SupportedPath & | add_path (Memory::Kind src_kind, bool src_global, span< const Memory > dst_mems, unsigned bandwidth, unsigned latency, unsigned frag_overhead, XferDesKind xd_kind) |
| |
| SupportedPath & | add_path (Memory::Kind src_kind, bool src_global, Memory::Kind dst_kind, bool dst_global, unsigned bandwidth, unsigned latency, unsigned frag_overhead, XferDesKind xd_kind) |
| |
| SupportedPath & | add_path (bool local_loopback, unsigned bandwidth, unsigned latency, unsigned frag_overhead, XferDesKind xd_kind) |
| |
◆ GPUIndirectChannel()
◆ ~GPUIndirectChannel()
| Realm::Cuda::GPUIndirectChannel::~GPUIndirectChannel |
( |
| ) |
|
◆ construct_remote_info()
| virtual RemoteChannelInfo * Realm::Cuda::GPUIndirectChannel::construct_remote_info |
( |
| ) |
const |
|
virtual |
◆ create_xfer_des()
◆ get_gpu()
| GPU * Realm::Cuda::GPUIndirectChannel::get_gpu |
( |
| ) |
const |
|
inline |
◆ needs_wrapping_iterator()
| virtual bool Realm::Cuda::GPUIndirectChannel::needs_wrapping_iterator |
( |
| ) |
const |
|
virtual |
◆ submit()
| long Realm::Cuda::GPUIndirectChannel::submit |
( |
Request ** |
requests, |
|
|
long |
nr |
|
) |
| |
|
virtual |
◆ suggest_ib_memories()
| virtual Memory Realm::Cuda::GPUIndirectChannel::suggest_ib_memories |
( |
| ) |
const |
|
virtual |
◆ supports_indirection_memory()
| virtual bool Realm::Cuda::GPUIndirectChannel::supports_indirection_memory |
( |
Memory |
mem | ) |
const |
|
virtual |
Queries if a given mem can be used as an indirection buffer.
- Parameters
-
| mem | Memory to be used as an indirection buffer |
- Returns
- True if the given
mem can be used as an indirection buffer for a copy
Reimplemented from Realm::Channel.
◆ supports_path()
| virtual uint64_t Realm::Cuda::GPUIndirectChannel::supports_path |
( |
ChannelCopyInfo |
channel_copy_info, |
|
|
CustomSerdezID |
src_serdez_id, |
|
|
CustomSerdezID |
dst_serdez_id, |
|
|
ReductionOpID |
redop_id, |
|
|
size_t |
total_bytes, |
|
|
const std::vector< size_t > * |
src_frags, |
|
|
const std::vector< size_t > * |
dst_frags, |
|
|
XferDesKind * |
kind_ret = 0, |
|
|
unsigned * |
bw_ret = 0, |
|
|
unsigned * |
lat_ret = 0 |
|
) |
| |
|
virtual |
◆ GPUIndirectXferDes
◆ is_ordered
| const bool Realm::Cuda::GPUIndirectChannel::is_ordered = true |
|
static |
◆ src_gpu
| GPU* Realm::Cuda::GPUIndirectChannel::src_gpu |
|
protected |
The documentation for this class was generated from the following file: