DPDK内存篇(三)

导读

这是关于数据面开发套件(DPDK)内存管理功能系列文章的第三篇。本系列的第一篇文章描述了DPDK基础的基本概念。第二篇文章深入介绍了输入输出虚拟地址(IOVA)和适用于所有DPDK版本的内核驱动程序。本文概述了DPDK版本中可用的内存管理工具,包括17.11版本。

DPDK17.11是(目前)仍然支持的最早的长期支持(LTS)版本。因此,描述DPDK 17.11提供的内存管理功能不仅为DPDK内存管理功能的发展提供了宝贵的历史视角,而且对许多使用这些较旧但仍受支持的版本的DPDK消费者有所帮助。

从内存管理的角度来看,18.11之前的LTS版本表现完全相同,因此,除非另有说明,否则关于17.11版本的所有内容也适用于任何早期DPDK版本。本文中涉及的一些概念已在本系列的第1篇和第2篇文章中介绍过,因此也请阅读这些文章。

01

作者简介

Anatoly Burakov:英特尔软件工程师,目前在维护DPDK中的VFIO和内存子系统。

02

为DPDK提供标准大页内存

为了使应用程序访问大页内存,Linux*使用了一个特殊的hugetlbfs文件系统。因此,为了利用标准大页,DPDK 17.11必须使用hugetlbfs文件系统挂载点。因为大页可以有不同的大小,hugetlbfs 挂载点可以提供对不同大小页面的访问,具体取决于它的配置方式。如果未明确指定特定hugetlbfs挂载点的大页大小,则它使用默认的大页大小,该大小通过内核命令行设置(或者是如果在启动时未指定默认的大页大小,则设置为某个默认值)。

在许多当前发行版中,默认情况下通过systemd可以使用hugetlbfs挂载点,在少数情况下(例如开发或调试),只有一个默认挂载点就足够了。用户也可以选择通过编辑/etc/fstab创建自己的hugetlbfs挂载点。如何设置hugetlbfs挂载点,设置默认大页大小以及保留标准大页超出了本系列文章的范围,但是有关如何执行这些操作的相关指南可以在DPDK文档以及Linux发行版文档中找到。

使用DPDK管理大页内存

一旦系统被设置为为应用程序使用保留大页,DPDK就可以使用它。默认情况下,如果没有指定与内存相关的环境抽象层(

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值