syft.generic.pointers.pointer_protocol

Module Contents

class syft.generic.pointers.pointer_protocol.PointerProtocol(location: AbstractWorker = None, id_at_location: Union[str, int] = None, owner: AbstractWorker = None, garbage_collect_data: bool = True, id: Union[str, int] = None, tags: List[str] = None, description: str = None)

Bases: syft.generic.pointers.object_pointer.ObjectPointer

The PointerProtocol keeps a reference to a remote Protocol.

It allows to: - run an evaluation of the remote protocol - get the remote protocol

run(self, *args, **kwargs)

Call a run on the remote protocol

request_remote_run(self, location: BaseWorker, args, kwargs)

Requests remote protocol execution.

Send a request to execute the protocol on the remote location.

Parameters
  • location – to which worker the request should be sent

  • args – arguments used as input data for the protocol

  • kwargs – named arguments used as input data for the protocol

Returns

Execution response

get(self, deregister_ptr: bool = True)

This is an alias to fetch_protocol, to behave like a pointer

static simplify(worker: AbstractWorker, ptr: PointerPlan)
static detail(worker: AbstractWorker, tensor_tuple: tuple)
wrap(self)