Prepare your environment for OVS DPDK

Prepare your environment for OVS DPDKΒΆ

This section describes the initialization steps needed to prepare your deployment for the enablement of the OVS DPDK feature.

Warning

Before you proceed with the DPDK enabling, verify that you have performed the following procedures:

  1. Enable Huge Pages
  2. Configure NUMA and CPU pinning architecture

To prepare your environment for OVS DPDK:

  1. Specify the DPDK driver.

    DPDK Environment Abstract Layer(EAL) uses either Userspace I/O (UIO) module or VFIO to provide userspace access on low-level buffers. MCP supports both configurations.

    Note

    To use VFIO approach, verify that both kernel and BIOS are configured to use I/O virtualization. This requirement is similar to SR-IOV Intel IOMMU and VT-d being enabled.

    To use one of Userspace I/O drivers, define the compute_dpdk_driver parameter. For example:

    compute_dpdk_driver: uio # vfio
    
  2. In respect to the parameter specified above, configure the DPDK physical driver. There is one-to-one dependency of what driver must be selected for physical DPDK NIC based on the configured I/O mechanism. For example:

    dpdk0:
      ...
      driver: igb_uio # vfio-pci
    
  3. To enable the physical DPDK device to run several RX/TX queues for better packet processing, configure the following parameter specifying the number of queues to be used. For example:

    dpdk0:
      ...
      n_rxq: 2 # number of RX/TX queues
    

    Note

    The increasing number of queues results in PMD threads consuming more cycles to serve physical device. We strongly recommend that you configure the number of physical queues not greater that CPUs configured for the DPDK-based application.