程序员经常抱怨说,只要他们拥有更快/更多内存/更多内核机器,他们就会更快乐(他们从不会说更高效)。
除了程序员工作站之外,任何人都可以想到任何语言/协议系统都可以使用两个空闲的四核四核服务器。
我不能,因为大多数编译器/解释器通常都是单独处理的,并遵循编译/检查语法阶段,然后是链接/绑定序列。即使在现代IDE中,也没有能力在编译许多源文件的编译阶段中存在。
答案 0 :(得分:7)
distcc: a fast, free distributed C/C++ compiler。系统确实构建得更快。
现在你可以在你的开发者机器上运行分布式构建工具,因为它们不太可能同时构建......但是,拥有专用的构建集群会更酷。
它还可以制作实用的每日自动版本,并帮助您在Joel Test上获得高分。
答案 1 :(得分:3)
您的代码是模块化的吗?如果是这样,你的编译肯定可以编制。您只需要并行构建多个模块。只有后期(不太密集)的阶段,如链接,无法并行化。
然后编译后事情不会停止。您可以运行各种分析,然后运行测试。所有这些都很容易并行化。
至于IDE支持......我希望您不需要在IDE的日常使用中重新编译整个项目。您可以将这些服务器用于自动构建,从中受益。
答案 2 :(得分:1)
在程序员职业生涯的早期阶段,我想到了工作站马力与我个人生产力之间的直接关系。随着我的经历的发展,我发现我完全错了。更重要的是 - productivity is gained by the tools
。
但是,如果我的工作站拥有更多我目前拥有的MHz /内存,我会更高兴。为什么?安慰。从开发的角度来看,我怀疑它每天只能释放几分钟,因为编译器运行得更快。
答案 3 :(得分:0)
存在使得联网在一起的多个单独设备显示为单个机器的系统,其被称为“single system image”。这在Linux中尤其普遍,例如kerrighed