图执行引擎#

图执行引擎用于执行 AI 应用程序图。它接受多个图文件作为输入,并且所有图都在同一进程上下文中执行。它还需要清单文件作为输入,其中包含要加载的扩展列表。它必须列出图所需的所有扩展。可以使用 Registry graph install 命令下载所有必需的扩展并生成清单文件。

/opt/nvidia/graph-composer/gxe --help
  Flags from gxf/gxe/gxe.cpp:
  -app (GXF app file to execute. Multiple files can be comma-separated)
    type: string default: ""
  -app_root (Root path for GXF app and subgraph files with relative path)
    type: string default: ""
  -graph_directory (Path to a directory for searching graph files.)
    type: string default: ""
  -log_file_path (Path to a file for logging.) type: string default: ""
  -manifest (GXF manifest file with extensions. Multiple files can be
    comma-separated) type: string default: ""
  -severity (Set log severity levels: 0=None, 1=Error, 2=Warning, 3=Info,
    4=Debug. Default: Info) type: int32 default: 3

其他选项

1. 如何使用命令行选项覆盖在图文件中指定的参数?#

1. 单个图文件#

可以使用 gxe 的命令行选项 --param 覆盖在图文件中指定的参数。完整路径仅由 / 分隔,唯一的例外是最后一个文字,其值必须被覆盖,由 = 分隔

以下是图文件的代码片段

---
name: Entity1
components:
- type: nvidia::gxf::PeriodicSchedulingTerm
  parameters:
    recess_period: 2000000
- type: nvidia::gxf::CountSchedulingTerm
  parameters:
    count: 100
- type: nvidia::gxf::test::StepCount
  parameters:
    expected_count: 100
---

要覆盖 CountSchedulingTermcount,可以使用以下命令行选项。

--param=Entity1/nvidia::gxf::CountSchedulingTerm/count=101

2. 多个子图文件#

当使用多个子图文件时,直到到达要覆盖其参数的组件名称为止,各个子图的实体名称都用 . 分隔。此后,组件类型和参数将由 / 分隔

以下是多个子图文件的代码片段

test_subgraph.yaml

---
name: gather_subgraph
components:
- type: nvidia::gxf::Subgraph
  name: gather_subgraph
  parameters:
    location: "gxf/test/apps/gather_subgraph.yaml"
    prerequisites:
      monitored_rx: rx/signal
- name: output
  parameters:
    max_capacity: 2
- name: forward1_buf_term
  parameters:
    min_size: 1
---

gather_subgraph.yaml

---
name: forward_subgraph_1
components:
- name: forward
  type: nvidia::gxf::Subgraph
  parameters:
    location: gxf/test/apps/forward_subgraph.yaml
    prerequisites:
      monitored_rx: prerequisites/monitored_rx
---

forward_subgraph.yaml

---
name: counter
components:
- name: step_counter
  type: nvidia::gxf::test::StepCount
  parameters:
    expected_count: 100
---

要覆盖 step_counterexpected_count,可以使用以下命令行选项。

--param=gather_subgraph.forward_subgraph_1.counter/nvidia::gxf::test::StepCount/expected_count=101