秦泽天
字节跳动编译工程与效率研发工程师
字节跳动 C++ 服务端编译工具链核心研发工程师、LLVM 社区贡献者,长期专注于公司内部 C++ 编译构建生态建设、编译工具链演进与大规模工程编译效率优化,对构建系统、工具链基础设施以及超大规模 C++ 工程的编译性能治理有深入理解。负责并推动字节跳动 C++ 编译构建生态建设和编译工具链升级,围绕编译工具链、构建基础设施和研发效率持续完善相关能力,通过系统化分析编译性能瓶颈并持续优化编译链路,有效降低大型 C++ 项目的编译成本,提升研发构建效率和整体开发体验。
演讲主题
字节跳动数据中心应用 libc++ 的落地与挑战(联合演讲)
字节跳动数千万核的生产 C++ 服务长期运行在 libstdc++ 上,将其整体迁移到 libc++ 在几乎所有业务上取得了 5 - 10% 的性能收益。分享介绍了迁移过程中在预编译库、标准库差异、工具链和编译构建等方面的多维度挑战和 AI 辅助迁移的经验,并结合多种优化或劣化的案例,对标准库的性能问题展开进一步剖析。 大纲: 1.字节跳动数据中心应用STL现状 (1)预编译库现状 (2)编译构建现状 2.libc++ vs libstdc++ 3.libc++ 迁移落地与挑战 (1)预编译库带来的挑战 (2)STL 库差异带来的兼容性和稳定性挑战 (3)对编译构建体系带来的挑战 (4)libstdc++ 迁移到 libc++性能优化和劣化案例深入分析 (5)AI 辅助迁移经验分享 4.libc++在字节跳动内部的迭代和演进 听众收益: 国内在大型互联网公司中,从 libstdc++ 迁移到 libc++ 的案例还不多,字节跳动在 2021 年核心业务全部迁移到 LLVM, 但是 libstdc++ 还停留在 GNU。为了拿到足够的性能收益和兼容性,字节跳动在2026年在 LLVM20 的基础上从 libstdc++迁移到了 libc++,期间积攒了足够多的大规模落地的经验,听众能够从中获得如何在大规模C++业务落地 libc++的实操经验,以及 libcstd++ 与 libc++ 的对比、性能分析以及 ABI 差异所带来的问题分析。与此能够获得对 libc++ 进行深入修改一些先进经验。