5from subprocess
import PIPE, Popen
15 serialized_proto =
None
17 serialized_proto = net.Proto().SerializeToString()
19 serialized_proto = net.SerializeToString()
22 if device_map
is not None:
23 serialized_device_map = {}
25 serialized_device_map[k] = device_map[k].SerializeToString()
26 self.
_NNModule_NNModule = C.NNModuleFromProtobufDistributed(
27 serialized_proto, serialized_device_map
30 elif serialized_proto:
31 self.
_NNModule_NNModule, self.
_OpList_OpList = C.NNModuleFromProtobuf(serialized_proto)
34 "NNModule can be constructed with core.Net or caffe2_pb2.NetDef types"
45 return self.
_NNModule_NNModule.getExecutionOrder()
78 C.replaceProducer(tensor, new_producer)
81 C.replaceAllUsesWith(old_tensor, new_tensor)
84 C.replaceAsConsumer(old_consumer, new_consumer)
97 old_proto = caffe2_pb2.NetDef()
99 new_proto = caffe2_pb2.NetDef()
100 new_proto.ParseFromString(output)
104 for n
in self.
dataFlowdataFlow.getMutableNodes():
105 m = C.matchSubgraph(n, pattern)
112 cmd_exists =
lambda x:
any(
113 os.access(os.path.join(path, x), os.X_OK)
114 for path
in os.getenv(
"PATH",
"").
split(os.pathsep)
116 if cmd_exists(
"graph-easy"):
117 p = Popen(
"graph-easy", stdin=PIPE)
119 p.stdin.write(s.encode(
"utf-8"))
121 if e.errno == errno.EPIPE
or e.errno == errno.EINVAL:
133NeuralNetOperator = C.NeuralNetOperator
134Operator = C.NeuralNetOperator
135NeuralNetData = C.NeuralNetData
136Data = C.NeuralNetData
137NNSubgraph = C.NNSubgraph
138NNMatchGraph = C.NNMatchGraph
140Annotation = C.Annotation
def __init__(self, net=None, device_map=None)
def replaceProducer(self, tensor, new_producer)
def createNode(self, val)
def replaceSubgraph(self, subgraph, new_node, inputs, outputs)
def createEdge(self, a, b)
def replaceAsConsumer(self, old_consumer, new_consumer)
def createUniqueDataNode(self, prefix="_unique")
def replaceNode(self, old_node, new_node)
def convertToCaffe2Proto(self, old_proto=None)
def replaceAllUsesWith(self, old_tensor, new_tensor)
def deleteEdge(self, a, b=None)
def deleteSubgraph(self, subgraph)
def deleteNode(self, node)
Tensor any(const Tensor &self)
std::ostream & print(std::ostream &stream, const Tensor &tensor_, int64_t linesize)
constexpr Symbol isinstance(static_cast< unique_t >(_keys::prim_isinstance))
returning a scalar tensor containing a pointer to it The timer is stopped by calling **TimerEnd **Github str
Module caffe2.python.layers.split.