• SPDK EAL: No free 2048 kB hugepages reported on node 0


    1 进入到 spkd/dpdk 的根目录中

    2 执行  sudo ./usertools/dpdk-hugepages.py

    3 再执行 hello_world 程序 可以看到结果

    TELEMETRY: No legacy callbacks, legacy socket not created
    Initializing NVMe Controllers
    Attaching to 0000:00:0e.0
    Attached to 0000:00:0e.0
     Namespace ID: 1 size: 1GB
    Initialization complete.
    INFO: using host memory buffer for IO
    Hello world!

    如果还是不行,就需要配置 hugepage 大页内存

    我的系统是ubuntu 18.04,需要安装以下库

    sudo apt-get install  libhugetlbfs libhugetlbfs-dev

    打开grub,添加 GRUB_CMDLINE_LINUX 参数

    sudo vim /etc/default/grub

    大页内存每页大小为2M,一共设置1024页面,即2GB,  如果内存多的,CPU又支持1GB的大页内存,可以每页设置1GB的大页内存

    GRUB_CMDLINE_LINUX="transparent_hugepage=never default_hugepagesz=2M hugepagesz=2M hugepages=1024 "

    重新生成grub.cfg

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

    reboot

    重启后查看 

    cat /proc/meminfo |grep -i Huge

    AnonHugePages:         0 kB
    ShmemHugePages:        0 kB
    FileHugePages:         0 kB
    HugePages_Total:    1024
    HugePages_Free:     1021
    HugePages_Rsvd:       61
    HugePages_Surp:        0
    Hugepagesize:       2048 kB
    Hugetlb:         2097152 kB

    大页内存设置完成,需要挂载

    sudo mkdir -p /mnt/huge
    mount -t hugetlbfs nodev /mnt/huge

    可以修改 fstab文件,每次启动自动挂载 增加一行信息

    sudo vim /etc/fstab

    nodev /mnt/huge hugetlbfs defaults 0 0

    reboot

    然后再次测试SPDK hello world, 可能会出现以下错误

    no NVMe controllers found

    这时只要从新运行 spdk的 setup.sh就可以了

    sudo ./script/setup.sh

    然后再次测试 hello_world

    TELEMETRY: No legacy callbacks, legacy socket not created
    Initializing NVMe Controllers
    Attaching to 0000:00:0e.0
    Attached to 0000:00:0e.0
     Namespace ID: 1 size: 1GB
    Initialization complete.
    INFO: using host memory buffer for IO
    Hello world!

     



     

  • 相关阅读:
    惊喜:2023前瞻版Java面试指南,不止八股文
    利用Unity和OpenXR实现眼动追踪的基础指南
    SpringBoot3.x中spring.factories功能被移除的解决方案
    Ubuntu目录和linux内核文件用途
    鸿蒙Cannot resolve symbol 'ResourceTable'
    SAP Spartacus 和 CDC 集成的 HTTP 请求明细
    2022-09-04 瞒春 学习笔记
    jdiixjxjs
    java计算机毕业设计吉他库存管理源码+mysql数据库+系统+lw文档+部署
    RHCSA(01)安装
  • 原文地址:https://blog.csdn.net/ivanx_cc/article/details/125993894