Multi Channel DMA Intel® FPGA IP for PCI Express* デザイン例のユーザーガイド

ID 683517
日付 10/06/2023
Public
ドキュメント目次

3.5.2.4.2. PMDのインストールとテスト・アプリケーション (CentOS)

  1. dpdkをダウンロードし、ビルドパッチを適用します。

    rootをユーザーとして次のコマンドを実行します。

    $ cd software/dpdk/patches/v20.05-rc1

    $ sh apply-patch.sh

  2. ビルド・コンフィグレーションで次のパラメーターを有効にします。

    ./config/common_baseの次のマクロを「y」に更新します。デフォルトでは、igb_uioは無効になっています。

    CONFIG_RTE_EAL_IGB_UIO=y

    VFIOの有効化: UIOの代わりにVFIOを使用する場合は、次の内容に従います。
    1. ./dpdk/drivers/net/mcdma/rte_pmd_mcdma.h ファイル内
      undefine UIO_SUPPORT #undef UIO_SUPPORT
    2. ./config/common_base の次のマクロを「y」に更新します。
      CONFIG_RTE_EAL_VFIO=y
  3. DPDKを構築してインストールします。
    次の手順を実行します。
    • $ export DPDK_DIR= <cloned dir>/software/dpdk/patches/v20.05-rc1/dpdk
    • $ export RTE_SDK=${DPDK_DIR}
    • $ export DPDK_TARGET=x86_64-native-linuxapp-gcc
    • $ export RTE_TARGET=x86_64-native-linuxapp-gcc
    • $ export DPDK_BUILD=$DPDK_DIR/$DPDK_TARGET
    • $ make config T=x86_64-native-linuxapp-gcc
    • $ rm -rf x86_64-native-linuxapp-gcc
    • $ make -j32 install T=$DPDK_TARGET DESTDIR=install
  4. UIOサポートで続行する場合は、次の手順を実行します。

    UIOベースモジュールをインストールします。

    $ modprobe uio

    igb_uioモジュールをインストールします。

    $ insmod x86_64-native-linuxapp-gcc/build/kernel/linux/igb_uio/igb_uio.ko

    デバイスをigb_uioドライバーに結び付けます。

    $ ./usertools/dpdk-devbind.py -b igb_uio <BDF>

    VFIOモジュールをインストールする場合 (UIOの代わりにVFIOを使用する)
    $modprobe vfio-pci
    デバイスをvfio-pciドライバーに結び付けます。
    $DPDK_DIR/usertools/dpdk-devbind.py -b vfio-pci <BDF>
  5. リファレンス・アプリケーションを構築します。

    $ cd examples/mcdma-test/perfq/

    $ make clean all

    $ make