“HowToInstallDPDK”的版本间差异
跳到导航
跳到搜索
(创建页面,内容为“* 通过ssh或者console进入系统shell * 首先, 请确定您使用的是飞腾NetONE系统, 检查的方法是<source lang="bash" line> uname -a | grep ex01a #...”) |
小 |
||
(未显示同一用户的6个中间版本) | |||
第1行: | 第1行: | ||
− | + | # 通过ssh或者console进入系统shell | |
− | + | # 首先, 请确定您使用的是飞腾NetONE系统, 检查的方法是<source lang="bash" line> | |
uname -a | grep ex01a | uname -a | grep ex01a | ||
# 如果有如下的输出, 即表示是NetONE系统 | # 如果有如下的输出, 即表示是NetONE系统 | ||
# Linux netone 4.4-bex01a #1 SMP Mon Aug 15 00:55:38 UTC 2016 aarch64 GNU/Linux | # Linux netone 4.4-bex01a #1 SMP Mon Aug 15 00:55:38 UTC 2016 aarch64 GNU/Linux | ||
</source> | </source> | ||
− | + | # 然后, 请参照[[HowToUpgradeWithIPK|这里完成当前系统的升级]], 确保当前系统包含所需软件包; | |
− | + | # 接下来安装dpdk, 请执行: <source lang="bash" line> | |
ipkg-cl -f /root/ipkg.conf install dpdk # 仅仅安装内核模块, 是dpdk的最小安装 | ipkg-cl -f /root/ipkg.conf install dpdk # 仅仅安装内核模块, 是dpdk的最小安装 | ||
ipkg-cl -f /root/ipkg.conf install dpdk-tools # 安装dpdk-devbind, testpmd等dpdk基本配置和测试工具 | ipkg-cl -f /root/ipkg.conf install dpdk-tools # 安装dpdk-devbind, testpmd等dpdk基本配置和测试工具 | ||
ipkg-cl -f /root/ipkg.conf install dpdk-tests # 在/usr/local/bin/下安装dpdk examples下的部分测试程序 | ipkg-cl -f /root/ipkg.conf install dpdk-tests # 在/usr/local/bin/下安装dpdk examples下的部分测试程序 | ||
</source> | </source> | ||
− | + | # 重启 | |
− | + | # /usr/share/dpdk下, 可以查看setup.sh等dpdk官方工具 | |
+ | |||
+ | '''以下内容仅供参考:''' | ||
+ | # /etc/init.d/S30dpdk启动脚本<source lang="bash" line> | ||
+ | #!/bin/sh | ||
+ | |||
+ | echo "starting dpdk...." | ||
+ | /bin/mkdir -p /mnt/huge | ||
+ | /bin/mount -t hugetlbfs nodev /mnt/huge | ||
+ | echo 2048 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages | ||
+ | </source> | ||
+ | # /root/dpdk.sh <source lang="bash" line> | ||
+ | #!/bin/sh | ||
+ | |||
+ | # 如果使用4.4的内核, 请uncomment下一行, 使用igb_uio | ||
+ | # DRIVER=igb_uio | ||
+ | # 如果使用4.7的内核, 请uncomment下一行, 使用vfio-pci | ||
+ | # DRIVER=vfio-pci | ||
+ | |||
+ | # SLOTS的内容可以通过"dpdk-devbind --status"获取, 在本示例里面(bex01a), 09:00.0对应的是eth4, 09:00.1对应的是eth5 | ||
+ | SLOTS="09:00.0 09:00.1" | ||
+ | |||
+ | /sbin/modprobe ${DRIVER} | ||
+ | for t in ${SLOTS}; do | ||
+ | dpdk-devbind --force --bind=${DRIVER} ${t} | ||
+ | done | ||
+ | dpdk-devbind --status | ||
+ | </source> | ||
+ | # 进入飞腾系统, 运行testpmd, 进行测试 |
2016年9月29日 (四) 10:57的最新版本
- 通过ssh或者console进入系统shell
- 首先, 请确定您使用的是飞腾NetONE系统, 检查的方法是
1uname -a | grep ex01a 2# 如果有如下的输出, 即表示是NetONE系统 3# Linux netone 4.4-bex01a #1 SMP Mon Aug 15 00:55:38 UTC 2016 aarch64 GNU/Linux
- 然后, 请参照这里完成当前系统的升级, 确保当前系统包含所需软件包;
- 接下来安装dpdk, 请执行:
1ipkg-cl -f /root/ipkg.conf install dpdk # 仅仅安装内核模块, 是dpdk的最小安装 2ipkg-cl -f /root/ipkg.conf install dpdk-tools # 安装dpdk-devbind, testpmd等dpdk基本配置和测试工具 3ipkg-cl -f /root/ipkg.conf install dpdk-tests # 在/usr/local/bin/下安装dpdk examples下的部分测试程序
- 重启
- /usr/share/dpdk下, 可以查看setup.sh等dpdk官方工具
以下内容仅供参考:
- /etc/init.d/S30dpdk启动脚本
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-2048kB/nr_hugepages
- /root/dpdk.sh
1#!/bin/sh 2 3# 如果使用4.4的内核, 请uncomment下一行, 使用igb_uio 4# DRIVER=igb_uio 5# 如果使用4.7的内核, 请uncomment下一行, 使用vfio-pci 6# DRIVER=vfio-pci 7 8# SLOTS的内容可以通过"dpdk-devbind --status"获取, 在本示例里面(bex01a), 09:00.0对应的是eth4, 09:00.1对应的是eth5 9SLOTS="09:00.0 09:00.1" 10 11/sbin/modprobe ${DRIVER} 12for t in ${SLOTS}; do 13 dpdk-devbind --force --bind=${DRIVER} ${t} 14done 15dpdk-devbind --status
- 进入飞腾系统, 运行testpmd, 进行测试