如何加快我的构建速度

如何加快我的构建速度

我正在一台装有 Ubuntu 10.04 的 Linux 机器上进行构建。我怎样才能真正加快我的构建速度?我有 4 个 CPU 和大量 RAM。我已经将进程组重新调整为-20。我还能做些什么吗?

答案1

大多数软件构建过程都使用make.确保make使用的-j参数所使用的数字通常是您拥有的 CPU 数量的两倍,这样make -j 8才适合您的情况。

答案2

将进程组重新调整为 -20 是一个坏主意。此良好级别应仅由最高优先级的系统关键任务使用。否则,您可能会失去响应能力,甚至冻结系统。并且潜在的编译时间收益将是微乎其微的。

除了迦勒已经建议了什么,如果你编译很多,你也可以使用加速构建编译器缓存或使用以下命令将构建任务分布在网络上的多台计算机上距离或者冰淇淋

答案3

添加到 rozcietrzewiacz 的答案:

第一个重大改进是磁盘,使用更快的 IOP 磁盘,即以 10,000 或 15,000 rpm 运行的磁盘,最好是 SSD,然后您就只受钱包的限制。

随机示例,三星 6Gbps SATA 2 SSD:

http://www.engadget.com/2011/08/17/samsungs-6gbps-ssd-gets-a-consumer-label-october-ship-date/

OCZ 拥有一些最极端的硬件,500,000 IOP:

http://www.engadget.com/2011/08/02/oczs-z-drive-r4-pcie-ssd-offers-2-800mb-sec-500-000-iops-pl/

您可以尝试将树复制到tmpfs文件系统,但 Linux 的文件缓存已经相当不错了。

为了快速开发使用,如果禁用所有优化,构建会更快。这些往往是 90 年代的调整,当时处理器速度很慢,现在几乎都是关于 IO 的。

我能想象到的最复杂的方法是使用cramfs存储树的大部分不改变的部分。使用压缩文件系统意味着更少的磁盘访问。

相关内容