DPL Installation Guide
The DPL Development Container (dpl_dev
) bundles several tools for compiling, controlling, and debugging DPL programs.
Pull the container image with the following command:
docker pull nvcr.io/nvidia/doca/dpl_dev:1.1.10-doca3.0.0-host
A set of scripts is provided with dpl_dev
, with one script per tool.
Each script launches its respective tool, reducing the number of command line options you need to specify.
The /install.sh
script provided within the dpl_dev
container copies the launch scripts to the current working directory. The following is an example command showing how to copy the launch scripts from within the container to a mounted directory of your choice (in this case, $PWD).
docker run --rm -it -v ${PWD}:${PWD} -u $(id -u):$(id -g) -w ${PWD} nvcr.io/nvidia/doca/dpl_dev:1.1.10-doca3.0.0-host /install.sh
The same command copies the following scripts to the local host file system:
Tool launch scripts
dplp4c.sh
dpl_admin.sh
p4runtime_sh.sh
dpl_nspect.sh
dpl_debugger.sh
Configuration script
scripts_config.sh
General purpose script for internal use only
scripts_utils.sh
For a detailed explanation of each tool, see DOCA Pipeline Language Developer Tool.
The scripts_config.sh
file specifies variables that set the default values for commonly used arguments required by the launch scripts. The DEV_IMAGE
variable defines the default for the -i <name:tag>
argument, which is required for all launch scripts. This argument is set by default to the pulled image's version, as shown in the example below.
The *_ADDRESS
variable (per tool) defines the default for the -a <address:port>
argument.
scripts_config.sh
#!/bin/bash
# This configuration file defines various arguments used by the launch scripts.
# These variables are optional, but defining them in advance simplifies the use of the launch scripts.
# Image name and tag that contains the development tools
# Example: nvcr.io/nvidia/doca/dpl_dev:<tag>
DEV_IMAGE=nvcr.io/nvidia/doca/dpl_dev:1.1.10-doca3.0.0-host
# IP where the DPL Runtime daemon (RTD) is running
# Example: 192.168.1.100
# DPL_RTD_IP=
# IP where the DPL RTD is running and the port for the P4 Runtime Server
# Example: ${DPL_RTD_IP}:9559
# P4RT_ADDRESS=${DPL_RTD_IP}:9559
# IP where the DPL RTD is running and the port for the DPL Admin
# Example: ${DPL_RTD_IP}:9600
# DPL_ADMIN_ADDRESS=${DPL_RTD_IP}:9600
# IP where the DPL RTD is running and the port for the DPL Nspect
# Example: ${DPL_RTD_IP}:9560
# DPL_NSPECT_ADDRESS=${DPL_RTD_IP}:9560
Compiling DPL Applications that you wish to examine using the developer tools.
Loading DPL Applications can now be done with the compilation outputs.
Use the DOCA Pipeline Language Developer Tool to further examine the DPL programs correct operation.