为节省大量内存而提出的Linux动态内核堆栈

2024年 3月 12日 57.3k 0


周一发布了一个“征求意见”补丁系列,介绍了Linux的一个新的动态内核堆栈功能。早期测试显示了显著节省内存的潜力。

根据去年LSF/MM峰会的一项提议,谷歌实现了对动态内核堆栈的支持。在过去的十年中,上游Linux内核的默认堆栈大小从之前的8K增加到了16K。谷歌一直在提供内核补丁以保持8K堆栈,但随着时间的推移,他们遇到了对更大堆栈大小的需求,这反过来又导致他们的超大规模部署增加了内存使用量。为了减少增加的内存使用,Google一直致力于动态内核堆栈,因为许多内核线程可以放在4K或8K堆栈中。

到目前为止,动态内核堆栈的正在进行的RFC补丁经过了轻微的测试,并允许从4K扩展到THREAD_SIZE限制。谷歌工程师发现,动态内核堆栈平均可以节省70%~75%的内核堆栈内存。

Pasha Tatashin发布的早期结果非常有希望,但可能取决于工作负载、虚拟化和其他因素:

Tatashin进一步补充道,“一些拥有数百万个线程的工作负载将会从这一特性中受益匪浅。”

请参阅RFC补丁系列 for those interested in this work for saving on the kernel stack memory.

相关文章

塑造我成为 CTO 之路的“秘诀”
“人工智能教母”的公司估值达 10 亿美金
教授吐槽:985 高校成高级蓝翔!研究生基本废了,只为房子、票子……
Windows 蓝屏中断提醒开发者:Rust 比 C/C++ 更好
Claude 3.5 Sonnet 在伽利略幻觉指数中名列前茅
上海新增 11 款已完成登记生成式 AI 服务

发布评论