内容简介:编译 DPDK 要求 gcc 版本在 4.9 以上,安装相关的编译工具和依赖库:为 DPDK 预留大页内存:将大页内存挂载起来,才能被 DPDK 使用:
编译 DPDK 要求 gcc 版本在 4.9 以上,安装相关的编译 工具 和依赖库:
apt-get install build-essential libnuma-dev libssl-dev libcap-dev libpcap-dev -y
为 DPDK 预留大页内存:
echo 1024 > /sys/devices/system/node/node0/hugepages/hugepages-2048kB/nr_hugepages echo 1024 > /sys/devices/system/node/node1/hugepages/hugepages-2048kB/nr_hugepages
将大页内存挂载起来,才能被 DPDK 使用:
mkdir /mnt/huge mount -t hugetlbfs nodev /mnt/huge
下载 DPDK 源码并编译:
wget https://fast.dpdk.org/rel/dpdk-17.11.2.tar.xz tar vxf dpdk-17.11.2.tar.xz cd dpdk-stable-17.11.2 make config T=x86_64-native-linuxapp-gcc export RTE_TARGET=build make export RTE_SDK=$PWD
安装 DPDK 内核模块:
modprobe uio insmod build/kmod/igb_uio.ko insmod build/kmod/rte_kni.ko
查看所有网卡的状态:
$ python installPkg/bin/dpdk-devbind.py --status Network devices using DPDK-compatible driver ============================================ <none> Network devices using kernel driver =================================== 0000:1a:00.0 'Device 37d0' if=eth0 drv=i40e unused= *Active* 0000:1a:00.1 'Device 37d0' if=eth1 drv=i40e unused= *Active* 0000:1a:00.2 'Device 37d1' if=eth2 drv=i40e unused= 0000:1a:00.3 'Device 37d1' if=eth3 drv=i40e unused= Other network devices ===================== <none>
其中 eth0 准备留给 DPDK 使用,我们记录下它的 PCI 号码为 0000:1a:00.0,网卡驱动为 i40e。关闭网卡 eth0,并将 igb_uio
驱动绑定到网卡 eth0:
ifconfig eth0 down ./usertools/dpdk-devbind.py -b igb_uio 0000:1a:00.0
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入理解程序设计
[美] Jonathan Bartlett / 郭晴霞 / 人民邮电出版社 / 2014-1 / 49.00
是否真正理解汇编语言,常常是普通程序员和优秀程序员的分水岭。《深入理解程序设计:使用Linux汇编语言》介绍了Linux平台下的汇编语言编程,教你从计算机的角度看问题,从而了解汇编语言及计算机的工作方式,为成就自己的优秀程序员之梦夯实基础。 很多人都认为汇编语言晦涩难懂,但New Medio技术总监Jonathan Bartlett的这本书将改变人们的看法。本书首先介绍计算机的体系结构,然后......一起来看看 《深入理解程序设计》 这本书的介绍吧!