码迷,mamicode.com
首页 > 系统相关 > 详细

Linux3.19内核block层出现新变化,增加 multi-queue block layer

时间:2015-01-29 10:35:26      阅读:420      评论:0      收藏:0      [点我收藏+]

标签:linux   driver   block   multi-queue   

最近Linux的最新内核已经release到Linux-3.19-rc6,根据Linus的release note,大约再经过一次rc7版本就可以正式release了。Linux 3.19内核在block层的最大变化就是增加了一个multi-queue block layer,来更好的支持类似于NVME等支持multi-queue机制的设备。所谓的multi-queue机制就是在多核CPU的情况下,将不同的block层提交队列分配到不同的CPU核上,以更好的平衡IO的工作负载,大幅提高SSD等存储设备的IO效率。

技术分享

其实在Linux-3.13的kernel中就已经出现了对multi-queue设备的支持,只不过那时候还不是专门的multi-queue的block layer,而是单独使用在NVME设备的driver中。在3.19内核以后,multi-queue block layer将统一接管multi-queque的工作。而NVME设备的driver也相应的拿掉了这部分功能,转而通过调用multi-queue block layer的函数来实现multi-queue机制。而在3.19内核之后对SCSI-mq的支持将不在话下。

下图示意了Blk-mq的IO Submission机制。

技术分享

很对测试和研究表明,Blk-mq/SCSI-mq对存储设备的Performance将有很大的提升,想要更多的了解Blk-mq/SCSI-mq这篇文章,下图显示了加入了Blk-mq/SCSI-mq后Linux-SCSI Performance

技术分享

技术分享

具体的Linux-3.19的block driver updates可以参见本链接



Linux3.19内核block层出现新变化,增加 multi-queue block layer

标签:linux   driver   block   multi-queue   

原文地址:http://blog.csdn.net/zhufengtianya/article/details/43266415

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!