Exemplo n.º 1
0
 def __init__(self, model: d5.ops.OnnxModel, device: d5.DeviceType,
              events: List[d5.ExecutorEvent] = None):
     super(TensorflowGraphExecutor, self).__init__(TensorflowNetwork(device),
                                                   events)
     self.setup_done = False
     self.model = model
     self.sess = None
     visitor = TensorflowVisitor()
     model.accept(visitor, self.network)
     self.is_training = visitor.is_training
Exemplo n.º 2
0
    def __init__(self,
                 model: d5.ops.OnnxModel,
                 device_option: DeviceOption,
                 events: List[d5.ExecutorEvent] = []):
        super(Caffe2GraphExecutor, self).__init__(Caffe2Network(device_option),
                                                  events)
        self.device_option = device_option
        self.model = model

        with core.DeviceScope(self.device_option):
            model.accept(Caffe2Visitor(device_option), self.network)
Exemplo n.º 3
0
 def __init__(self, model: d5.ops.OnnxModel, device: d5.DeviceType,
              events: List[d5.ExecutorEvent] = []):
     super().__init__(model, events)
     self.devname = 'cuda' if device is None or device.is_gpu() else 'cpu'
     self.network = PyTorchNetwork(device)
     self.visitor = PyTorchVisitor()
     self.is_training = False
     model.accept(self.visitor, self.network)
     self.model = self.visitor.model.to(self.devname)
     self.model.eval()
     new_network = PyTorchNativeNetwork(self.model)
     new_network.outputs = self.network.outputs
     self.network = new_network
     torch.cuda.empty_cache()