linux系统安装dpdk

预安装编译dpdk所需软件

dpdk20.11与之前版本相比,使用了meson和ninjia的编译方式

# apt install python3.8 python3-pyelftools

由于meson依赖python3.7及以上版本,这里选择安装python3.8

如果选择pip安装meson和ninja

# pip3 install meson ninja --user

(pip3安装meson默认安装在/home/tp/.local/bin下,需要将其添加到环境变量中,之后才可使用:

# export PATH=PATH : PATH:PATH:HOME/.local/bin)

如果选择apt/rpm方式安装meson和ninja

# apt install meson ninja-build

建议选择apt方式安装,官方选定匹配版本,而且不用编译,安装相对速度快。另外相当于全局,其他用户也可以用。

1. 下载dpdk库

方式1:从github下载

# git clone git@github.com:DPDK/dpdk.git

# git checkout v22.11-rc3

方式2:从官网ftp下载

DPDK官网下载列表

20.11版本将igb_uio代码移除,有需要的从git://dpdk.org/dpdk-kmods下载编译安装

#meson build

#cd build

#ninja

#ninja install

检查是否安装成功:

#pkg-config --modversion libdpdk

v22.11-rc3

安装网卡驱动
#git clone http://dpdk.org/git/dpdk-kmods

#cd dpdk-kmods/linux/igb_uio

#make

#modprobe uio

#insmod igb_uio.ko intr_mode=legacy(注意:加载驱动时要带着参数intr_mode= legacy,如果不加参数,将会有问题!)

#lsmod | grep uio
#rmmod igb_uio

绑定网卡之前需要关闭linux下的网卡

#Ifconfig eth0 down

进入目录usertools

#./dpdk-devbind.py –b=igb_uio 0000:01:08.1(eth0对应的bus-info)

#./dpdk-devbind.py –s

减绑用-u

#./dpdk-devbind.py –u 0000:01:08.1

将网卡绑定为原始驱动

#./dpdk-devbind.py –b igb 0000:01:08.1

配置大内存页面

配置Huge Pages:DPDK需要使用Huge Pages来提供更高的内存性能

#usertools/dpdk-hugepages.py --setup 1G

具体配置多大,参考官网说明。这个1G代表一个页面大小,多个就是n*1G。

DPDK技术介绍

详解DPDK技术知识点

高性能网络框架-DPDK你不得不知道的点

DPDK的源码编译安装

DPDK 22.07安装-ubuntu 22.04

dpdk-20.11 学习篇 编译和安装

posted @   星辰大海浩瀚宇宙呀  阅读(422)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示