HowToInstallDpdk
跳至導覽
跳至搜尋
以下的說明均基於DPDK 16.04
- 通過ssh或者console進入系統shell
- 首先, 請確定您使用的是申威NetONE系統, 檢查的方法是
1uname -a | grep swx1 2# 如果有如下的输出, 即表示是NetONE系统 3#Linux netone 4.4.150-swx1 #1 SMP Sat Aug 18 11:47:40 UTC 2018 sw_64 GNU/Linux
- 然後, 請參照這裡完成當前系統的升級, 確保當前系統包含所需軟件包;
- 接下來安裝dpdk, 請執行:
1ipkg-cl -f /root/ipkg.conf install dpdk # 仅仅安装内核模块, 是dpdk的最小安装 2ipkg-cl -f /root/ipkg.conf install dpdk-tools # 安装dpdk_nic_bind, testpmd等dpdk基本配置和测试工具 3ipkg-cl -f /root/ipkg.conf install dpdk-tests # 在/usr/local/bin/下安装dpdk examples下的部分测试程序, 这些测试程序均以dpdktest_<原名>的方式存放
- 重啟
- /usr/share/dpdk下, 可以查看setup.sh等dpdk官方工具
以下內容僅供參考:
- /etc/init.d/S30dpdk啟動腳本(腳本需要加上可執行權限 chmod +x)
1#!/bin/sh 2 3echo "starting dpdk...." 4/bin/mkdir -p /mnt/huge 5/bin/mount -t hugetlbfs nodev /mnt/huge 6echo 2048 > /sys/kernel/mm/hugepages/hugepages-8192kB/nr_hugepages
1chmod +x /etc/init.d/S30dpdk
- /root/dpdk.sh
1#!/bin/sh 2 3DRIVER=igb_uio 4 5# SLOTS的内容可以通过"dpdk_nic_bind --status"获取, 在本示例里面(swx1), 0001:2a:00.0 0001:2a:00.1分别对应的是eth0, eth1 6SLOTS="0001:2a:00.0 0001:2a:00.1" 7 8/sbin/modprobe ${DRIVER} 9for t in ${SLOTS}; do 10 dpdk_nic_bind --force --bind=${DRIVER} ${t} 11done 12dpdk_nic_bind --status
- 進入申威系統, 運行testpmd, 進行測試