首页 > 其他分享 >虚拟机编译安装 dpdk--运行helloworld

虚拟机编译安装 dpdk--运行helloworld

时间:2024-07-26 09:25:12浏览次数:11  
标签:grub -- 虚拟机 sudo helloworld 网卡 apt install dpdk


DPDK技术介绍

一,版本信息

DPDK版本:dpdk-22.07

操作系统:Ubuntu 22.04.1 LTS

二、虚拟机ubuntu添加网卡

1.

2.显卡由enssx改为ethx

sudo nano /etc/default/grub

找到GRUB_CMDLINE_LINUX=""

改为GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

然后执行如下指令

sudo grub-mkconfig -o /boot/grub/grub.cfg 或 sudo updategrub

重启

网卡名称果然变成了eth0和wlan0

三、编译dpdk

切换root用户

下载依赖

apt install build-essential

apt install meson

apt install ninja-build

apt install pkg-config

apt install python3-pyelftools

apt install libnuma-dev

numactl --hardware 查看只有一个node

执行

echo 1024 > /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages

编译dpdk

meson build cd build ninja ninja install ldconfig

加载驱动

git clone git://dpdk.org/dpdk-kmods

cp -r ./dpdk-kmods/linux/igb_uio ./dpdk-22.07/kernel/linux/

cd /dpdk-22.07/kernel/linux/igb_uio

make

ifconfig ens37 down//关闭其中一个网卡

insmod igb_uio.ko ./dpdk-devbind.py --bind=igb_uio 02:05.0 //绑定网卡

执行

./dpdk-devbind.py --status

显示 绑定dpdk成功

四、编译运行helloworld

meson configure -Dexamples=helloworld ninja

执行

./dpdk-helloworld

显示成功

五.dpdk之vfio-pci绑定(可选)

$ sudo vim /etc/default/grub

# 在GRUB_CMDLINE_LINUX行添加intel_iommu=on iommu=pt
# 保存退出

$ sudo update-grub
$ sudo reboot 

ifconfig eth1 down
echo 1 > /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
./dpdk-devbind.py -b vfio-pci 0000:02:05.0

标签:grub,--,虚拟机,sudo,helloworld,网卡,apt,install,dpdk
From: https://blog.csdn.net/weixin_43837016/article/details/140680680

相关文章

  • cpanel 上的 React-django - MIME 类型('text/html')不是受支持的样式表
    我正在开发一个React-Django应用程序,并且它在本地运行当我将其安装在运行cpanel的服务器上时,它只显示一个空白页面。我的提供者检查了它并做了以下陈述:python应用程序在cpanel上正确安装错误原因应该在开发者端找到我制作......
  • 线程的核心原理
    线程调度模型1分时调度模型:系统平均分配CPU时间片,所有线程轮流占用CPU.2抢占式调度模型:系统按照线程优先级来分配CPU时间片,优先级高的线程获取CPU执行时间相对多一些.线程的优先级Thread类里的这个属性privateintpriority代表线程的优先级.优先级值的范围为1-10.......
  • 基于大数据+爬虫+数据可视化+SpringBoot+Vue的虚拟证券交易平台设计和实现(源码+论文+
    博主介绍:✌全网粉丝50W+,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、P......
  • 多线程的创建方式
    线程的创建方式1:通过继承Thread类创建一个线程类.子类重写Thread的run方法即可.publicclassThreadTwoTestextendsThread{publicstaticvoidmain(String[]args){ThreadTwoTestthreadTwoTest=newThreadTwoTest();threadTwoTest.start();......
  • OSError:SavedModel 文件不存在于:cnnCat2.h5\{saved_model.pbtxt|saved_model.pb}
    SublimeText项目结构错误显示2021-06-1511:48:41.978235:Wtensorflow/stream_executor/platform/default/dso_loader.cc:64]Couldnotloaddynamiclibrary'cudart64_110.dll';dlerror:cudart64_110.dllnotfound2021-06-1511:48:41.978656:......
  • C#中将多个excel档案汇总为一个excel档,并批量汇入oracle数据库
    privatevoidbt_bach_oracle_Click(objectsender,EventArgse){//將下載的excel匯總為一個excelstringsourceFolder=@"D:\123";//源文件夹路径stringdestinationFolder=@"D:\456";//目标文件夹路径stringdest......
  • C++ 虚基类注意事项
    C++中的虚基类(VirtualBaseClass)是一个重要的概念,主要用于解决多重继承中的菱形继承问题,即当一个派生类通过多条路径继承同一个基类时,基类在派生类中会有多个副本,导致资源浪费和不必要的复杂性。以下是C++虚基类的一些详细注意事项:1.虚基类的定义与声明定义方式:虚基类并不......
  • [数据压缩] 压缩算法概述
    1压缩算法概述总述在数据压缩领域里,文本压缩的历史最久,从Morse到Huffman和算术编码(Arithmeticcoding),再到基于字典和上下文的压缩算法。各种算法不断改进,从通用算法,到现在更具针对性的算法,结合应用场景的垂直化的趋势越来越明显。综上,在选择或者评价压缩算法,一定要结合实......
  • Springboot配置文件的变量在代码中读取
    要将路径值存储在application.yml文件中并在Java代码中读取,可以使用@Value注解来注入这个值。1.在application.yml中定义变量首先,在application.yml文件中定义你的路径变量,例如:custom:geoPackagePath:static/route_net/marnet_plus_5km.gpkg2.使用@Value注......
  • java环境变量的配置
    1.path环境变量配置的作用程序的执行需要使用外部指令javac,但是javac指令仅仅能在JDK安装目录下的bin目录下时候,因此程序只能写入bin目录程序开发过程中,不能将源代码写入JDK的安装目录,因此需要将源程序保存到任意位置的指定目录(英文目录),所以需要使javac指令在任意目录下可以运......