DOCA Documentation v2.9.1 LTS
DOCA SDK 2.9.1 Download PDF

DOCA Flow Tune Server

This guide provides an overview and configuration instructions for DOCA Flow Tune Server API.

DOCA Flow Tune Server (TS) is a DOCA Flow subcomponent that collects predefined internal key performance indicators (KPIs) and pipeline information of a running DOCA Flow application. All information is transferred by an inter-process communication channel (Unix domain socket) to DOCA Flow Tune Tool for further analysis and monitoring.

DOCA Flow Tune Server API is only available when using the DOCA Flow and DOCA Flow Tune Server trace libraries.

Info

For more detailed information, refer to section "Debug and Trace Features" under DOCA Flow.

DOCA Flow Tune Server has a configuration file that allows customizing various settings. The configuration file is divided into different sections so to ease its use.

Config File Default Values

If a configuration file was not provided, DOCA Flow Tune Server uses default values for its mandatory fields. List of all default values can be seen in section "Configuration File Example".

Custom Config File

Instead of using the default configuration values, users may create a file of their own and provide a file path using the doca_flow_tune_server_cfg_set_cfg_file_path() API call.

Once used, DOCA Flow Tune Server loads all provided values directly from the file, while the rest of the fields (if any) use their respective default values.

Configuration File Example

flow_tune_cfg.json

Copy
Copied!
            

{ "network": { "uds_path": "/tmp/tune_server.sock" } }

  • network

    • uds_path – Unix Domain Socket (AF_UNIX) path for the tune server to bind to. This socket is used for the inter-process-communication (IPC) channel between DOCA Flow Tune Server and DOCA Flow Tune Tool. Default value is /tmp/tune_server.sock.

Info

For more detailed information on DOCA Flow API, refer to NVIDIA DOCA Library APIs.

The following subsections provide additional details about the library API.

struct doca_flow_tune_server_cfg

Opaque configuration struct to use on configuration API calls.

doca_flow_tune_server_cfg_create

Allocates and creates DOCA Flow Tune Server configuration structure.

Copy
Copied!
            

doca_error_t doca_flow_tune_server_cfg_create(struct doca_flow_tune_server_cfg **cfg);


doca_flow_tune_server_cfg_set_cfg_file_path

Sets the local configuration file path in the opaque configuration struct, for DOCA Flow Tune Server to use when searching for the JSON configuration file.

Providing a JSON configuration file is optional. If a file is not provided, DOCA Flow Tune Server uses internal defaults.

Copy
Copied!
            

doca_error_t doca_flow_tune_server_cfg_set_bind_path(struct doca_flow_tune_server_cfg *cfg, const char *path);


doca_flow_tune_server_cfg_destroy

Destroys and deallocates DOCA Flow Tune Server opaque configuration structure.

Should be called after calling doca_flow_tune_server_init().

Copy
Copied!
            

doca_error_t doca_flow_tune_server_cfg_destroy(struct doca_flow_tune_server_cfg *cfg);


doca_flow_tune_server_init

Starts DOCA Flow Tune Server main thread.

Copy
Copied!
            

doca_error_t doca_flow_tune_server_init(struct doca_flow_tune_server_cfg *cfg);


doca_flow_tune_server_destroy

Stops DOCA Flow Tune Server main thread.

Copy
Copied!
            

void doca_flow_tune_server_destroy(void);


© Copyright 2024, NVIDIA. Last updated on Dec 11, 2024.