何时使用X code分布式构建功能 [英] When to use the XCode Distributed Build Feature

查看:140
本文介绍了何时使用X code分布式构建功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在一个小的iPhone开发团队合作,在我们的办公室,我们在任何时候在网络上运行X code中的至少4份。考虑让每个人都拥有它运行。

I work in a small iPhone development team, in our office, we have at least 4 copies of XCode running on the network at any one time. Contemplating getting everyone to have it running.

我们正在一起联网使用标准的WIFI开关,使网络速度和延迟不如有线网络...

We're networked together using a standard WIFI Switch, so network speed and latency isn't as good as wired network...

只是想知道,是否有使用分布式构建进行过任何实时收益?一旦它通过了相关的数据来回在网络上。至少对于相对较小的项目。

Just wondering, is there any real time gain to be had on using distributed builds? Once it passes the relevant data back and forth over the network. At least for relatively small projects.

推荐答案

这取决于你的项目,它的依赖,而且必须传输的数据量。

it depends on your project, its dependencies, and the amount of data that must be transferred.

15-20秒并不可怕。当然,还有更多的工作要全面完成。它可能是大家耕种到一个非常快的Mac Pro,而不是给对方一个好主意,如果你使用双核处理器(即信息没有给出)。

15-20 seconds is not terrible. certainly, there is more work overall to be done. it may be a good idea for everyone to farm it out to a very fast Mac Pro, rather than to each other if you're using dual cores (that info was not given).

据项目配置:如果您在您的项目一堆依赖库,那么它可以帮助禁用precompiled头。多方程式的是依赖的平均数目,和对象生成的数目。

as far as project configuration: if you have a bunch of dependent libraries in your projects, then it may help to disable precompiled headers. much of the equation is the average number of dependencies, and the number of objects to generate.

在15-20秒,这将有助于许多开发人员编写,使他们种地之前优化其生成时间。如果它是一个几分钟的时间,那么你可能想直接跳到分布建立了8或12核。

at 15-20 seconds, it would help many developers to write so they optimize their build times before farming out. if it were a few minutes, then you may want to jump straight into distributed builds with a 8 or 12 core.

一个容易被忽视的缓慢方面建立在小项目:禁用每构建静态分析,只是手动运行它每隔一小时二,固定每一个问题,然后

one easily overlooked aspect of slow builds on small projects: disable static analysis per build, and just run it manually every hour two, fixing every issue then.

否则,你的项目很可能被分成较小的项目/库。机会是,你不会总是编辑同一个依赖关系。

otherwise, your project could probably be divided into smaller projects/libraries. chances are, you won't always be editing the same dependencies.

假设编译,链接等都是其中时间是在这一点上花费:其余大部分属于参与构建C和C ++程序的典型问题。尽量减少你的依赖,包括图形。它实际上是相当容易objc完成;因为大部分的接口使用objc类型,你可以使用转发

assuming compilation, linking, etc are where the time is spent at this point: much of the rest falls into the typical issues involved with building c and c++ programs. minimize your dependencies and include graphs. it's actually quite easy to accomplish with objc; since much of the interfaces use objc-types, you can use forwards.

如果您的图书馆很小(例如小于50个对象产生的),那么你也可能获得通过不使用precompiled头的加速。如果一切都已经依赖于你由PCH包括12体系框架列入....然后尝试在接下来的项目。

if your library is small (e.g. less than 50 objects generated), then you may also gain a speedup by not using precompiled headers. if everything already depends on your inclusion of 12 system frameworks included by the pch.... then try it in the next project.

当然,你可能只是尝试定时清洁重建,构建以生成PCH文件,和几个增量构建,以得出一个结论。

of course, you could just try timing a clean rebuild, a build with generated pch files, and several incremental builds in order to come to a conclusion.

这篇关于何时使用X code分布式构建功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆