腾讯工程师重构Linux多交流装备I/O调理:彻底消除全局锁
2026-07-14 13:06:12
7月14日消息,腾讯工程师 Kairui Song 最近向 Linux 内核提交了一组 RFC 补丁,旨在彻底重构多个交换设备的 I/O 分配机制。
对于使用交换分层或分层交换处理的复杂服务器场景,这套方案有望显著改善系统性能与可扩展性。

这套补丁引入了一种全新的方法来公平分配多交换设备的I/O负载。其核心改动是完全移除可变的plist和全局锁,进而取消了全局集群缓存。这样一来,分配和轮换可以更加自由地进行。
作为依赖项,该系列还清理并重构了交换设备管理的锁定模式。
此前,每个交换设备都有自己的percpu集群缓存。后来一个提交将集群缓存移到了全局作用域,让所有设备共享同一个全局缓存,以减少对plist的频繁修改。
快速交换分配直接使用每个CPU的集群缓存,设备轮换仍由plist处理。这种设计虽然可行,却引发了多个长期存在的问题。
其中最关键的是,位于设备选择之上的全局CPU集群缓存,与交换分层和分层交换分配等概念存在根本冲突。
plist本身需要plist_requeue()函数来轮换设备以实现轮询,这需要持有swap_avail_lock锁,所有CPU都会争用这把锁。
此外,轮换被认为是慢速路径,为了不触碰plist而采用快慢路径设计,导致了诸多变通方案和设计局限。
新补丁将所有交换设备和新引入的percpu读取器优先级队列,统一由percpu rwsem保护,从而大幅提高了可扩展性。这一设计也为未来的交换分层等新想法做好了铺垫。

声明:文章不代表量链科技观点及立场,不构成本平台任何投资建议。投资决策需建立在独立思考之上,本文内容仅供参考,风险自担!转载请注明出处!侵权必究!
相关阅读
-
比特币现金 2026 年价格预测:五月升级引入量子安全与智能合约,能否突破 850 美元?区块链快讯 2026-09-07 13:21:26
-
OPPO Find X10正式发布:全球首发3.2亿镜头,2023年最强影像旗舰金融科技前沿 2026-09-07 13:17:22
-
pycharm怎么设置代码对齐竖线?pycharm设置代码对齐竖线的方法资讯百科 2026-09-07 13:15:43
-
大批NS2用户遭误封现已解封,任天堂需承担责任金融科技前沿 2026-09-07 13:10:35
-
男人驾驶坦克300驶入网红湖泊拍照 官方已约谈教育整改金融科技前沿 2026-09-07 13:04:25
-
ALEO 币是什么?深度解析团队背景、融资机构、代币经济学及未来前景区块链快讯 2026-09-07 13:03:37
-
群联CEO潘健成:即使再建20座厂,NAND闪存需求依然不足,原厂缺口巨大金融科技前沿 2026-09-07 12:57:47
-
使用雷电模拟器卡顿怎么办?雷电模拟器卡顿的解决方法资讯百科 2026-09-07 12:57:13
-
微软确认优化Windows 11:8GB内存也能流畅运行,开机提速新体验金融科技前沿 2026-09-07 12:52:11
-
2027款宝马BMW X3上市:31.8万起,配置大幅提升对抗疾驰GLC金融科技前沿 2026-09-07 12:46:50