NVIDIA Accelerated IO (XLIO) Documentation Rev 3.60

XLIO - Configuration Quick Start

This guide helps you quickly get started with the XLIO Configuration Subsystem.

  1. Enable the New Configuration System:

    Copy
    Copied!
                

    export XLIO_USE_NEW_CONFIG=1

  2. Choose Your Configuration Method:

    1. Option A: Inline Configuration (Recommended for Testing):

      Copy
      Copied!
                  

      export XLIO_INLINE_CONFIG="core.resources.memory_limit=4294967296, monitor.log.level=info, network.protocols.tcp.nodelay.enable=true"

    2. Option B: JSON Configuration File (Recommended for Production):

      Copy
      Copied!
                  

      Create /etc/libxlio_config.json:   { "core": { "resources": { "memory_limit": 4294967296, "number_max_fds": 1024 } }, "monitor": { "log": { "level": "info", "filename": "/var/log/xlio.log" } }, "network": { "protocols": { "tcp": { "nodelay": { "enable": true } } } } }

    3. Option C: Environment Variable (Specify Config File Path):

      Copy
      Copied!
                  

      export XLIO_CONFIG_FILE="/tmp/my_config.json"

High Performance TCP

Copy
Copied!
            

export XLIO_INLINE_CONFIG="network.protocols.tcp.nodelay.enable=true, network.protocols.tcp.quickack=true"


Low Latency TCP

Copy
Copied!
            

export XLIO_INLINE_CONFIG="network.protocols.tcp.nodelay.enable=true, network.protocols.tcp.quickack=true, hardware_features.tcp.lro=disable"


Nginx High Performance

Copy
Copied!
            

export XLIO_INLINE_CONFIG="applications.nginx.workers_num=8, applications.nginx.distribute_cq=true, applications.nginx.src_port_stride=2"


Debug and Monitoring

Copy
Copied!
            

export XLIO_INLINE_CONFIG="monitor.log.level=debug, monitor.log.details=2, monitor.stats.file_path=/tmp/xlio_stats.log, monitor.exit_report=true"


Check Configuration Loading

Copy
Copied!
            

# Enable configuration debug logging export XLIO_INLINE_CONFIG="monitor.log.level=debug, monitor.log.details=3"   # Run your application and check for config messages ./your_application 2>&1 | grep -i config


Validate JSON Configuration

Copy
Copied!
            

# Check JSON syntax python3 -m json.tool /etc/libxlio_config.json   # Validate against schema jsonschema -i /etc/libxlio_config.json /etc/xlio_config_schema.json


Configuration Priority Order

  1. Inline Config (XLIO_INLINE_CONFIG) - Highest priority

  2. JSON File (XLIO_CONFIG_FILE or /etc/libxlio_config.json)

  3. Legacy Environment Variables - Lowest priority

Common Issues

Issue

Solution

Config not loaded

Verify XLIO_USE_NEW_CONFIG=1 is set

Invalid JSON

Use python3 -m json.tool to validate syntax

Parameter not found

Check parameter name in Configuration Reference


Inline Configuration Syntax

  • Basic format: parameter.path=value

    Copy
    Copied!
                

    export XLIO_INLINE_CONFIG="monitor.log.level=info"

  • Multiple parameters: comma-separated

    Copy
    Copied!
                

     export XLIO_INLINE_CONFIG="monitor.log.level=info, core.resources.memory_limit=1073741824"

  • Boolean values: true/false

    Copy
    Copied!
                

    export XLIO_INLINE_CONFIG="network.protocols.tcp.nodelay.enable=true" 

JSON Configuration Hierarchy

Copy
Copied!
            

{ "core": { "resources": { "memory_limit": 1073741824 } }, "monitor": { "log": { "level": "info", "file_path": "/var/log/xlio.log", "details": 1 } } }

  • Advanced Configuration: See Configuration Reference for all parameters.

  • Migration: Use Migration Guide to convert legacy settings.

  • Troubleshooting: Enable debug logging for detailed configuration information.

  1. Use JSON files for production deployments (easier maintenance)

  2. Minimize inline config for critical applications

  3. Validate configurations before deployment

For the complete parameter documentation and advanced configuration patterns, see the XLIO Configuration Reference page.

© Copyright 2025, NVIDIA. Last updated on Nov 26, 2025