内核hybird poll原理

70 篇文章 9 订阅 ¥9.90 ¥99.00
hybrid poll机制解决了传统poll过度占用CPU的问题,通过在IO提交后先sleep再进行poll,提高了效率。配置参数io_poll_delay控制是否启用hybrid poll及sleep延迟时间,以平衡性能和CPU利用率。
摘要由CSDN通过智能技术生成

传统的poll机制通过持续的poll操作,可以提高诸如高IO throughput设备的IO性能,例如NVME设备。但是持续的poll一个设备,会过度的占用CPU,有时可能使IO性能更糟糕,为了解决这种传统poll过度占用CPU的问题,内核引入了hybird poll,与传统的poll在IO提交后就立即poll不同,在hybird poll机制中引入了poll delay。

假定后端设备要用10微秒才能完成一个IO,当我们在用submit_bio提交io后就开始poll,前面几us的poll就是白白浪费cpu了,一个更有效率的办法是在submit_bio提交io后就先sleep几个微秒,然后被唤醒在IO将要完成前的几个微秒开始poll,这样在IO提交后的前期就不需要白白占用着cpu做徒劳的poll了(消耗CPU),这种机制就是hybird poll,其poll cycle被划分为两部分:1,前期执行sleep;2,后期执行传统poll。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值