Registry Command Line Interface — DeepStream documentation (original) (raw)

The Registry command line interface (CLI) can be invoked by registry command with the following options:

registry –help registry --version registry command [args]

Where

The sections below provide details about the command options that can be used with the registry.

cache#

This command is used to interact with the cache content.

Command syntax

Optional arguments:

repo#

This command is used to interact with the repositories.

Command syntax

Optional arguments:

repo clean#

This command is used to clean the default repository.

Command syntax

registry repo clean [args]

Optional arguments:

repo list#

This command is used to list repositories.

Command syntax:

registry repo list [args]

Optional arguments:

repo info#

This command is used to provide information about a repository.

Command syntax:

registry repo info [args]

Required arguments:

Optional arguments:

repo sync#

This command is used to synchronize a repository. Also synchronizes each extension of the provided repository to the cache.

Command syntax:

registry repo sync [args]

Required arguments:

Optional arguments:

extn#

An extension references headers, shared libraries, binary files and data files. It is referenced by uuid (Universally unique identifier), a name and a version. It can depend on other extensions for which their name,uuid and version must be specified. Also, an extension contains a list of components. An extension can be implemented for several targets with differences in architecture, operating system, distribution and CUDA version. Each one of these combinations is called a variant.

Each extension has an interface, this interface is composed of anextension.yaml file along with optional header files. These files are common for all variants of that extension.

Each extension contains a list of components. A component contains a typename, a type_id, a base typename, a description and a boolean telling if the component is abstract.

Command syntax:

Optional arguments:

extn add#

This command is used to add an extension.

Command syntax:

Required arguments:

Optional arguments:

Here is an example of <manifest_name> argument:

name: cuda extension_library: libgxf_cuda.so uuid: d63a98fa-7882-11eb-a917-b38f664f399c version: 2.5.0 license_file: gxf/cuda/LICENSE url: www.nvidia.com git_repository: null labels:

extn sync#

This command is used to synchronize an extension.

Command syntax:

registry extn sync [args]

Required arguments:

Optional arguments:

extn import#

This command is used to import extension packages from NGC. A specific version of an extension contains an interface and multiple variants.

Interface Command syntax:

registry extn import interface [args]

Required arguments:

Optional arguments:

Variant Command syntax: ::

registry extn import variant [args]

Required arguments: * -d/--output-directory <directory> - Select an output directory. * -s/--select-version <extension_version> - Select an extension version. * -n/--extn-name <extension_name> - Select an extension name. * -a/--arch <architecture> - Set an architecture. * -f/--distro <distribution> - Set a distribution. * -o/--os <os> - Select an operating system.

Optional arguments:

Supported values for the required arguments:

extn list#

This command is used to list extensions. Once extensions are present in cache, it is possible to list them and obtain details about them. Also, it is possible to filter extensions to display only the ones matching some characteristics. The filtering is optional.

Command syntax:

registry extn list [args]

Optional arguments:

extn info#

This command is used to provide information about an extension.

Command syntax:

registry extn info [args]

Required arguments:

Optional arguments:

extn versions#

This command is used to display versions of an extension.

Command syntax:

registry extn versions [args]

Required arguments:

Optional arguments:

extn variants#

This command is used to display variants of an extension.

Command syntax:

registry extn variants [args]

Required arguments:

Optional arguments:

extn dependencies#

This command is used to display all dependencies of an extension.

Command syntax:

registry extn dependencies [args]

Required arguments:

Optional arguments:

comp#

This command is used to interact with components. Each component contains a list of parameters. A parameter contains a key, a headline, a description, a gxf_parameter_type, a default value, a handle type and flags.

Command syntax:

Optional arguments:

comp list#

This command is used to list components. Filters are available as it is the case for components.

Command syntax:

registry comp list [args]

Optional arguments:

comp info#

This command is used to provide information about a component.

Command syntax:

registry comp info [args]

Required arguments:

Optional arguments:

graph#

This command is used to interact with the graph.

Command syntax:

Optional arguments:

graph install#

This command is used to install graph and generate a manifest with the list of extensions needed to execute the graph and in the order in which they must be loaded. Also generates an archive of the extensions and their files corresponding to the variant arguments specified using the target file. For every extension used in the graph, the registry will choose the closest matching variant from its cache and create the archive. The variant chosen by the registry will be specified in the output manifest file. Generated archive can also be unpacked locally into a directory specified by --archive-dir-path.

Command syntax:

registry graph install [args]

Required arguments:

Optional arguments:

Sample Target File:

platform: arch: x86_64 os: linux distribution: ubuntu_22.04 compute: cuda: 12.6 cudnn: 9.3.0 tensorrt: 10.3.0 deepstream: 7.1 triton: 2.49.0 vpi: 2.3.1