SPDK发布v18.10

原文地址:DPDK与SPDK开源社区 SPDK v18.10主要特性包括:动态内存分配,加密虚拟Bdev, jsonrpc-client,SPDKCLI支持iSCSI和NVMe-oF。 本季度的新版本发布包含了来自55位不同作者的670次代码提交。本季度第一次提交代码的贡献者中,近一半来自于中国地区。在此,我们特别向中国地区的SPDK开源社区贡献者们致以感谢。 SPDK开源社区衷心感谢大家的参与、... 继续阅读

基于SPDK的NVMe SSD性能评估指南

原文地址:DPDK与SPDK开源社区 作者简介:周雁波,存储软件工程师,从事SPDK的开发与性能测试工作。 本文主要介绍磁盘性能评估的方法,针对用户态驱动SPDK与Kernel,并且对常见问题做出总结。 一 通过fio工具测试磁盘性能 SPDK采用异步I/O(Asynchronous I/O)加轮询(Polling)的工作模式,通常与Kernel的异步I/O作为对比。在此,主要介绍通过使用fio评... 继续阅读

SPDK生态工具(二):性能评估工具

在之前的《SPDK生态工具(一):监控管理工具》一文中,我们详细介绍了SPDK监控管理工具,今天带来的这篇文章将向大家介绍:SPDK生态工具之性能评估工具。 fio_plugin 通常,在内核模式下,使用fio工具来测试设备在实际的工作负载下所能承受的最大压力。用户可以启动多个线程,对设备来模拟各种IO操作,使用filename指定所被测试的设备。然而,在SPDK用户态模式情况下,SPDK在使用前... 继续阅读

CPU到底在忙啥?CPU利用率的正确计算方法

我们平时使用的CPU利用率方法是极具误导性的,并且一年更甚一年。那么什么是CPU利用率?是你的CPU到底有多忙,是像“% CPU”这样到处在用的指标所显示的那样吗? 在top命令里,你看到90%的CPU利用率是这样: 然而它真正想表达的是这个意思: Stall(这里译作“怠速”)是说这个处理器没有在跑指令,比如在等待内存I/O的时候。我上图所画的比例(“忙”与“怠速”之间)是我在真实生产环境中遇到... 继续阅读

DPDK中的memcpy性能优化及思考

内存拷贝(memcpy)这个操作看似简单,但长期以来存在很多关于其优化的讨论,各种编程语言库也都有对应实现,而对于memcpy性能评估测试的讨论就更多了。        那么如下的memcpy实现到底有什么问题? [crayon-5c15219f0de6a112716604/]         很简单,首先,这看起来太简单,不够高端,气势上就先输了;同时,代码没有使用Vector指令,没有指令级并... 继续阅读