linux - 英特尔 SPDK ioat 示例无法运行
问题描述
我是 intel SPDK 的新手,在运行示例代码时遇到了一些问题。
我按照本页所述设置了 BIOS 。
英特尔® 超线程技术关闭
启用英特尔 SpeedStep® 技术
英特尔® Turbo Boost 技术已禁用
然后我从此页面git clone并运行所有命令。测试命令./test/unit/unittest.sh返回所有单元测试通过。
但是当我运行示例 examples/ioat/verify/verify 时,它返回
EAL:保留了 24 个大小为 1073741824 的巨页,但未找到该大小的已安装hugetlbfs
开始 SPDK v18.10-pre / DPDK 18.05.0 初始化...
[ DPDK EAL 参数:验证 --no-shconf -c 0x1 --legacy-mem --file-prefix=spdk_pid3170 ]
EAL:检测到 16 个 lcore
EAL:检测到 2 个 NUMA 节点
EAL:多进程套接字 /var/run/dpdk/spdk_pid3170/mp_socket
EAL:保留了 24 个大小为 1073741824 的巨页,但未找到该大小的已安装hugetlbfs
EAL:探测 VFIO 支持...
用户配置:
运行时间:10秒
核心掩码:0x1
队列深度:32
找不到足够的 ioat 频道。检查 ioat 通道是否绑定到 uio_pci_generic 或 vfio-pci。scripts/setup.sh 可以帮助解决这个问题。
和 scripts/setup.sh 状态显示
巨页
节点巨大的免费/总计
节点0 1048576kB 24 / 24
节点0 2048kB 0 / 800
节点1 1048576kB 0 / 0
节点1 2048kB 0 / 224
NVMe 设备
BDF Numa 节点 驱动程序名称 设备名称
I/OAT DMA
BDF Numa 节点驱动程序名称
虚拟
BDF Numa 节点驱动程序名称 设备名称
我的硬件是:
带有 ioatdma 的 linux 内核版本 4.15.7 编译为模块
CPU 英特尔至强 E5-2695
芯片组 C612
如果有人能给我一些建议或给我一些关于 SPDK 的网站,那将是非常有帮助的!谢谢!
解决方案
运行./scripts/setup.sh
(不带参数)。如果部分下没有ioat
设备,I/OAT DMA
您将无法运行此应用程序。也没有hugetlbfs
挂载点。
推荐阅读
- regex - 在 Word 文档中搜索(单/双引号)之间的文本
- asp.net - ASP.NET 使用 MobileServiceClient 或 IMobileServiceTable 查询多个表
- spring - Spring Security 无法正常工作
- python - 用列表中的项目替换 JSON 中的变量
- ios - 使用 UICollectionReusableView 的 UITableView 自定义标题
- python - 在多处理 Python 中更改全局变量
- javascript - JS Fetch API 访问返回值
- mysql - 强制转换为有符号然后分配给 int
- c# - 在 asp.net 中更改页面时调用单击事件(函数)
- c# - 如何选择加入可访问性改进?