跳转到内容

性能优化

并行编译

我们可以通过 xmake -j N 指定同时构建的任务并行度,来加速编译。

不过默认情况下,Xmake 已经开启此特性,会自动根据当前机器的 CPU Core 资源来自动评估分配需要并行的任务数。

编译缓存加速

Xmake 默认开启了本地编译缓存,这在 Linux/macOS 上提速效果非常明显。

不过在 Windows 上由于启动进程太重,并且 msvc 内置的预处理器太慢,因此目前默认对 msvc 禁用了本地缓存。

另外,除了本地缓存,Xmake 还提供远程缓存的支持,这在多台机器上共享编译缓存时非常有用。

关于这个特性的详细介绍,可以看下文档:编译缓存

Unity Build 编译加速

对于 C++ 构建,我们还可以配置开启 Unity Build 编译,将多个 C++ 源码合并到一个源文件中去编译,来减少头文件的解析时间,效果也比较明显。

详情见:Unity Build 编译

分布式编译

对于超大型的工程,我们还可以通过增加多台编译服务器,通过分布式编译特性来加速编译。

详情见:分布式编译