SPDK v21.07
近期,SPDK团队正式发布了21.07版本,一起来看看都有哪些新功能吧!(温馨提示:由于英文函数名较长,为了获得更佳的阅读体验,手机上建议横屏阅读~)
新功能
-内核DSA:在IDXD库添加了对内核DSA驱动的支持。
-Init 库:添加Init库,实现SPDK子系统初始化。
-用户态DTrace:添加了在SPDK应用程序运行bpftrace的支持。详情请访问https://spdk.io/doc/usdt.html。
- zipf实用程序:添加了可以产生幂律概率分布的zipf随机数发生器。配合使用bdevperf 和nvme perf工具,既可生成覆盖所有LBA的块,同时会更频繁地选择小的LBA地址。
请访问https://github.com/spdk/spdk/releases/tag/v21.07,查看本次发布的完整原文。
特别感谢!
此版本包括711个提交,35,000个行代码更改,由56位作者共同完成。
在此特别感谢首次提交代码的以下几位贡献者:
Curt Bruns
Jakub Wyka
John Levon
Jonathan Teh
Matt Dumm
Matthew Burbridge
Rajarshi Chowdhury
Scott Peterson
Swapnil Ingle
Tyler Sun
Wu Mengjin
Yuri Kirichok
SPDK开源社区衷心感谢大家的参与、贡献和努力!
详细的发布说明如下:
accel_fw
添加了API spdk_accel_submit_copy_crc32c,在拷贝数据时运行CRC32C。
添加了API spdk_accel_batch_prep_copy_crc32c,分批处理CRC32C和拷贝命令。
添加了API spdk_accel_submit_copy_crc32cv,提交链式CRC32C和拷贝命令。
bdev
将spdk_bdev_read_blocks_with_md arg偏移量定义从int64_t更改为uint64_t。
使用红黑树统一组织bdev名称和别名,实现更快查找。
删除了ZCOPY模拟:可以检查bdev模块是否支持ZCOPY,若不支持则执行现有READ/WRITE命令。
对spdk_bde