SPDK在X86平台的编译
基于x86_64+银河麒麟平台编译SPDK的最新主线版本(v21.01),总是顽固的出现处理dpdkbuild子目录时错误,提示dpdk/build_tmp目录不存在,即使手动创建所需的目录也是存在各种问题。经过查看dpdk的meson编译脚本,发现需要meson的版本号>=0.47.1,而相同的代码之所以在飞腾+UOS20的平台上能编译通过,是因为该平台meson的版本为0.49.2。
1)源码安装meson 0.49.2
软件仓库里的meson默认版本是0.29,需要更新到0.47.1以上,这里选择在arm64上编译通过使用的版本0.49.2,下载源码、解压后,在源码目录中执行以下命令:
python3 setup.py build
sudo python3 setup.py install (默认安装到/usr/local)
2)x86平台需要先安装nasm 2.14以上版本
3)安装其他依赖包
sudo apt install libncurses5-dev uuid-dev libssl-dev libaio-dev
4)编译spdk
在spdk根目录下执行:
./configure
make
sudo make install
5)在build/examples/使用perf命令测试硬盘读写速度
修改对于hugepage的支持
mount -t hugetlbfs hugetlbfs /mnt/huge
sudo ./perf -q 32 -s 1024 -w randwrite -t 20 -c 0xF -o 4096 /dev/sda5