快速编译Misc
一直痛恨在build上面花时间,一些小结:
software:
unity build:把多个cpp连到一起,这个用的也比较多了pch合适的大小,不是放的东西越多越好hardware:ssd:硬盘瓶颈解决比较彻底的方式ramdisk+junction:组里的HH找到的组合,比较给力,使用内存当硬盘,然后使用junction工具把一些中间东西定位到这个硬盘上面,可以进一步提升我们项目比较大,build用到了将近3g的空间,如果release,这里ramdisk就需要放的空间大一些,编retail和debug的时候会出现空间不够的情况,要自己做一个剪切,转移到硬盘上去,考虑到一般就在一个version上工作,所以这个还是可以接受的把环境变量的TEMP也设置到ramdisk上面去
- 2楼book_sssa2000昨天 14:40
- unity build这个是指?npch这方面有什么指导性的文章推荐不?nn我们这边解决方法是ssd+incredbuildn你们link的时间多不多,link时间多的话打开增量link也能减少挺多时间的。
- Re: davidguyu昨天 21:10
- 回复book_sssa2000n我写过一点关于PCH的文章:nnhttp://www.cnblogs.com/gamedev/archive/2012/07/31/2616289.htmlnn另外,关于unity build,incridible build等很多东西,推荐看一下我这几篇东西,挺有意思的:nThe evils of unity builds,很仔细反思了一下unity buildnhttp://leewinder.co.uk/blog/?p=394nnThe magic of unity build,介绍untify buildnhttp://buffered.io/posts/the-magic-of-unity-buildsnnSpeeding C++ Linksnhttp://nedbatchelder.com/blog/200401/speeding_c_links.html 行之有效,我用这个方式减少了不少link时间nnThe Quest for Perfect Build systemnlink自己google一下吧,名人,不难找,讲了Incredibuild其实还是有很多局限,核心思想是IB用link时间来换取compiling时间。另外我写的里面也提到,PCH对IB的效果有很大影响
- Re: ccanan2小时前
- 回复book_sssa2000nunity build就是用一个cpp文件把多个cpp文件include到一起,然后只编译这个cpp文件,就会大幅度减少obj大小和link timenpch主要是发现之前和incredibuild的时候,网络传输消耗太大,试着降低pch大小,时间就减少了,具体的文章倒是没有,主要是经验了。
- 1楼davidguyu昨天 12:40
- 另外关于junction,win vista以后os有内置功能mklink,没必要去多下载一个junction了。