MCPcopy Create free account
hub / github.com/MegEngine/MegEngine / apply_on_var_node_remote_recv

Function apply_on_var_node_remote_recv

imperative/src/impl/ops/io_remote.cpp:36–52  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

34}
35
36cg::OperatorNodeBase* apply_on_var_node_remote_recv(
37 const OpDef& def, const VarNodeArray& inputs) {
38 auto&& recv = def.cast_final_safe<RemoteRecv>();
39 OperatorNodeConfig config{recv.cn};
40 config.name(recv.make_name());
41 auto group_client = std::make_shared<opr::GroupClientProxy>(
42 ssprintf("%s:%d", recv.addr.data(), recv.port));
43 auto&& graph = inputs[0]->owner_graph();
44 mgb_assert(!recv.shape.empty());
45 TensorShape shape;
46 for (auto&& dim : recv.shape) {
47 shape[shape.ndim++] = dim;
48 }
49 return graph->insert_opr(std::make_unique<mgb::opr::RemoteRecv>(
50 recv.key, inputs[0], *graph, group_client, config, shape, recv.dtype,
51 recv.backend));
52}
53
54TensorPtr megray_recv_tensor(
55 std::shared_ptr<MegRay::Communicator> megray_comm, TensorLayout& layout,

Callers

nothing calls this directly

Calls 6

nameMethod · 0.45
make_nameMethod · 0.45
dataMethod · 0.45
owner_graphMethod · 0.45
emptyMethod · 0.45
insert_oprMethod · 0.45

Tested by

no test coverage detected