Meta 不再放弃 Jemalloc
Source: Hacker News
概览
- Meta 认识到 jemalloc 作为高性能内存分配器在其软件基础设施中的长期收益。
- 我们正在重新聚焦 jemalloc,旨在降低维护需求并现代化代码库,同时继续演进该分配器,以适配最新的硬件和工作负载。
- 我们致力于与开源社区共同开发 jemalloc,欢迎贡献和合作。
构建软件系统很像建造摩天大楼:所有人看到的是顶部,但支撑它不倒的部分是埋在地下的基础和隐藏在视线之外的脚手架。
jemalloc 作为高性能内存分配器,一直是我们软件栈中高度杠杆化的组件,随着底层硬件和上层软件的变化而不断适应。它与 Linux 内核和编译器一起,为 Meta 提供了长期的收益,贡献了可靠且高效的基础设施。
倾听、反思与改变
高杠杆伴随高风险。在实用性与原则性工程实践的光谱上,像 jemalloc 这样的基础软件组件需要最高的严谨性。由于 jemalloc 带来的杠杆效应,追求短期收益的诱惑很大。组织必须具备强大的自律,抵制这种诱惑,遵循核心工程原则。
近年来,逐渐出现了偏离长期指导 jemalloc 开发的核心工程原则的趋势。虽然某些决策带来了即时收益,但随之而来的技术债务最终减缓了进展。
我们认真倾听了社区的反馈。秉持合作精神,我们深入反思了自己的管理方式及其对 jemalloc 长期健康的影响。在与社区成员会面时,包括项目创始人 Jason Evans,我们分享了自我检视以及正在改变的方法。我们已启动清除技术债务、重建 jemalloc 长期路线图的工作。
jemalloc 的新篇章
通过这些对话,原始的 jemalloc 开源仓库 已经恢复归档。我们对能够继续担任项目维护者深表感激。Meta 正在重新聚焦 jemalloc,旨在降低维护需求并现代化代码库,同时继续演进该分配器,以适配最新和新兴的硬件与工作负载。
展望未来,我们当前对 jemalloc 的计划聚焦于以下几个关键改进领域:
- 技术债务削减 – 清理技术债务、重构并增强 jemalloc,确保其保持高效、可靠且易于所有用户使用。
- 大页分配器 – 持续改进 jemalloc 的大页分配器(HPA),更好地利用透明大页(THP),提升 CPU 效率。
- 内存效率 – 提供打包、缓存和清除机制的改进,以实现更优的内存效率。
- AArch64 优化 – 确保 jemalloc 在 AArch64(ARM64)平台上具备出色的开箱即用性能。
我们知道信任是通过行动赢得的。我们希望,随着时间的推移,我们的重新承诺能够在 jemalloc 的健康和进展中得到体现。我们邀请社区加入这一新篇章——分享您的反馈,帮助塑造 jemalloc 的未来。我们期待与社区合作,共同推动 jemalloc 前进。