开源中国Windows 版 LibreOffice 因性能问题要求使用 Clang 进行编译


LibreOffice 现在倾向于使用 LLVM Clang 而不是其他编译器来构建新的渲染代码 。 当回退到基于 CPU 的软件光栅化时 , 考虑到谷歌自己对 Skia 引擎的重视是基于 Clang 的 , 因此 Clang 生成的代码性能要比其他编译器好得多 。 所以当构建 Windows 版本的 LibreOffice 7.0 时 , 现在对使用 Clang 提出了硬性要求 。
Lubo?Luňák 在 LibreOffice 的 Git 代码仓库中进行了更改 , 以要求 Windows 上的 Skia 必须使用 Clang 编译器进行编译 。 使用 Skia 进行渲染是 Windows 上的默认设置 , 在其基于 CPU 的光栅化模式下 , 与 Clang 相比 , “使用 MSVC 编译的性能要差得多” 。

开源中国Windows 版 LibreOffice 因性能问题要求使用 Clang 进行编译
本文插图

理想情况下 , 大多数 LibreOffice 7.0 用户将使用 Skia 提供的 Vulkan 加速功能 , 但是对于使用较旧/不受支持的驱动程序或硬件的用户 , 基于 CPU 的加速功能就显得十分重要 。 下面的视频展示了使用 Clang(上半部分)与使用 Microsoft MSVC 构建的 LibreOffice 的性能差异对比 。

【开源中国Windows 版 LibreOffice 因性能问题要求使用 Clang 进行编译】开源中国Windows 版 LibreOffice 因性能问题要求使用 Clang 进行编译
本文插图

由于这种巨大的性能差异 , LibreOffice 现在要求使用 Clang 来在 Windows 平台上进行构建 。 如果 Skia 仅在其他平台上使用时 , 可能会在 Linux 等平台上看到 Clang 的硬件要求 , 而目前这只是一个建议——除非 Skia 代码或 GCC 编译器有了更好的优化 , 从而无需 Clang 也能带来更好的性能 。
最后 , 使用 Skia 渲染代码和包含 Vulkan 支持的 LibreOffice 7.0 将于8月发布 。


    推荐阅读