Remote Connectivity

VAD supports connecting to another remote (or local) instance of VAD for executing, debugging and capturing performance metrics of OpenVX* workloads. This capability is accessible from both the VAD UI and VAD CLI (using the "-an" option).

The remote connectivity infrastructure assumes a symmetric installation both on the client and the target machine as shown in image below:

Commands from the host system are serialized as either strings or binary blobs before being transferred to the target system. All commands are currently synchronous with return data serialized as strings or larger binary data blobs (for example, files and serialized OpenVX primitives data).

The runtime configuration and other VAD configuration settings are loaded from the remote target and queried to setup the environment and populate the list of available kernels and target devices.

NOTE: Any file references in the OpenVX graph must be available both on the client side (for metadata propagation purposes) and on the target device (for validation and graph processing purposes). None of the external files are copied and it is a user responsibility to deploy all the dependencies on the target device. As a result, it is recommended to use relative paths in the graph.

The following connection configurations are supported:

  • Ubuntu* to Ubuntu
  • Ubuntu to Yocto*
For more complete information about compiler optimizations, see our Optimization Notice.