我们有一个基于 Linux 的构建系统,其中一个构建包含许多不同的嵌入式目标(启用了相应的不同驱动程序和功能集),每个目标都使用另一个单一的主源代码树构建。
与其尝试将我们的基于 make 的系统转换为对多进程更友好的系统,我们只想找到同时为所有这些目标启动构建的最佳方法。我不确定如何获得最佳性能。
我考虑了以下可能的解决方案:
- 许多单独的构建机器。缺点:共享代码的大量副本,或从(慢)共享驱动器工作。更多系统需要维护。
- 较少数量的多处理器机器(可能是双四核),具有快速条带化 RAID 本地存储。缺点:我不确定它将如何扩展。似乎体积会成为瓶颈,但我不知道这些天 Linux 处理 SMP 的能力如何。
- 类似的 SMP 机器,但带有运行 VMware 的管理程序或 Solaris 10。这是愚蠢的,还是会提供一些调度好处?缺点:没有解决存储瓶颈问题。
我打算坐下来尝试这些可能性,但我想检查一下我是否遗漏了什么。谢谢!