未命名

栏目: 服务器 · Linux · 发布时间: 5年前

内容简介:编译 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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

硅谷之火

硅谷之火

迈克尔·斯韦因 / 王建华 / 机械工业出版社 / 2001-1-1 / 34.00

我们今天正处于这样一个时代:充满幻想的人们发现他们获得了他们曾经梦寐以求的力量,并且可以利用这个力量来改造我们的世界。 这是个转折的时代,跨国公司迷失了发展方向,而小企业家却举起了计算机革命的大旗,成了开拓未来的先锋。在这个时代里,计算机奇才的脸上露出了胜利的微笑,胸怀 大志者成了富有理想的人,而富有理想的人则成了亿万富翁。这是一场真正的革命,它促使人们变得伟大,变得富有而充满理想,自豪而富......一起来看看 《硅谷之火》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具