并行编译加快 VS C++ 项目的编译速度

转载 2018年04月15日 20:20:24

出自:http://blog.csdn.net/yockie/article/details/16867457

以前完全没有接触过分布式编译,今天因工作需要尝试了一下,绝对很强大,体验也非常好,绝对让编译速度上了一个大台阶,对大项目而言是福音啊~

        下面就记录一下Xoreax IncrediBuild的使用方式。官方提供的是试用版本,网上所谓的破解版也比较多,但大多数都不靠谱,感觉就没破解,最后找到的这个版本,既新(v4.61)而且破解的也好,果断收藏~ Xoreax IncrediBuild v4.61也是VS的插件,支持VS2010、VS2008、VS2005,之前的Xoreax IncrediBuild版本支不支持没做考究。

以下引用自http://software.intel.com/zh-cn/blogs/2012/06/18/vs-c/,文字表达稍有修改

加速编译原理:

        Xoreax IncrediBuild是分布式编译(多线程处理)工具,也称之为联合编译.如果局域网内存在多台电脑安装了这个软件(不要求安装VS),在编译C/C++时,它会查找局域网中空闲的CPU,并将源文件发到空闲CPU一起编译,从而大大缩短了大工程的编译时间.
        IncrediBuild 分为服务端(Coordinator)和客户端(Agent).服务端是协调任务的分配,客户端把分到手的任务编译后再返还回任务请求者,不是服务器, 服务端只负责分配工作,之后客户端之间进行P2P的操作,如果二个客户端建立好链接后,此时再与服务端断开也不会影响他们之间的编译。

安装方法:

1) 服务端(Coordinator)的安装:
运 行IncrediBuild安装程序,选择Install IncrediBuild,并点Next下一步.同意License Agreement继续下一步.来到安装组件选择(Component Selection).这里做为服务端我们要钩先上IncrediBuild Coordinator.这里是一个复选框,一般来说服务端也可以参与编译工作,如果不想让服务端参与编译工作的话,就把上面的IncrediBuild Agent前的钩点掉就可以

        继续下一步,选择安装路径,和使用的一些端口号.参与编译的CPU数(这个只有钩选了Agent后才会有)等,这些使用默认的就可以了.之后安装完成.IncrediBuild的服务端就安装好了.

 

2) 客户端(Agent)的安装:
        在其它的电脑上,运行IncrediBuild的安装程序,运行到安装组件选择(Component Selection),只钩选IncrediBuild Agnet并下一步

        

        选择安装路径,并下一步.在这要填入服务端的IP地址和端口号.

        填好之后下一步,它会与服务器进行验证一下.然后设置一下编译通讯的端口之类的.这与网内安装的其它的一至就行了,一般情况都使用默认.然后选择参与编译的CPU数.最后安装就行了.


        到这步,基本上服务器与客户端都安装完成.在服务端机器上打开CoordinatorMonitor中可以看到各成员的状态.

        打开VS你将会发现菜单栏上多出了一项IncrediBuild的选项.这就是在“IncrediBuild”菜单下进行联合编译了.

        提示:编译的时候关闭杀毒软件。

         以下是编译界面:(很炫~)

 

再附上下载地址:下载v4.61破解版!!!

 

下午在公司机器上测试的过程中发现几个注意的地方,记录一下:

(1)如果某台笔记本使用电池电源,则server将不分配任务给此台机器的CPU;

(2)使用有些的机器,链接使用无线的笔记本时经常连不到,所以最好参与编译的机器在同一网段中;

(3)如果有最新版的,则只要在server端机器上安装最新版即可,安装完成后会提示对其他所有连接的机器都进行update,在线即可对其他安装IncrediBuild的机器进行update,非常方便~

 

        部门准备小推,如果没有问题再全推,确实是提高效率之利器~~

 

如果有使用IncrediBuild进行命令行编译、Windows下Gcc编译、CygWin下编译的需求,可参考这里!

参考资料

https://www.cnblogs.com/lihaiping/p/5787783.html

提高VS2008的C++项目编译速度——开启多核编译

配置属性->C/C++->命令行中增加/MP8     (这里的8是编译时启用的线程数,可以自由修改) 配置属性->C/C++->代码生成中“启用最小重新生成” 设置为“否”  (这两个选项冲突,关...
  • bottlerun
  • bottlerun
  • 2014-07-17 17:42:29
  • 2567

vs编译程序加快速度的方法

在使用VS2013编译C++程序的时候,修改某个文件,会使整个工程都重新编译一遍,为了使编译速度加快,可以修改C++配置属性: 第一因时间引起的: 1.找到项目-属性-配置属性...
  • vivian187
  • vivian187
  • 2016-07-18 09:39:34
  • 1963

如何提高C++的编译速度

用C++开发的人都知道,C++的编译速度比较慢,为什么比较慢,有一个原因是因为C++编译时,会把include里面的文件全部都编译进来,如果能想办法减少include的文件,那么就可以提高编译速度了。...
  • caoli98033
  • caoli98033
  • 2017-06-11 11:06:48
  • 539

VS2013 加快编译速度 的方法整理

VS2013 加快编译速度 的方法整理1.更改项目设置 项目|属性|C/C++|代码生成|启用最小重新生成:Yes(/Gm) 项目|属性|C/C++|常规|调试信息格式:程序数据库(/Zi) 项目|属...
  • hyqsong
  • hyqsong
  • 2015-12-04 15:19:46
  • 7165

VS加快程序编译速度——以VS2013为例

VS加快程序编译速度——以VS2013为例
  • amusi1994
  • amusi1994
  • 2016-12-15 23:47:47
  • 3897

VS2015增量编译,加快编译速度

起因:之前工程设置的好好的, 改动一个文件,必定是只编译该文件相关的。然而最近就是无论是否改动文件,都会有部分文件重新编译。解决流程: 查看增量编译的设置 1.1 因为工程是在Debug模式下,so清...
  • u011417820
  • u011417820
  • 2017-07-24 16:29:35
  • 1703

如何提高vs2010编译速度?

如果你的cpu够强你应该学会如何利用好它来加速你的代码编译速度,那么你怎么才能够最大限度让你的cpu发烧呢? 下面是一个对比: 比如我的cpu是i7 3770k, 编译cocos2d-x的lib...
  • sonikk
  • sonikk
  • 2013-05-22 20:57:44
  • 6915

并行编译加快VS C++项目的编译速度

最近编译的项目都比较大,话说自己的电脑配置还行,但编译所花的时间还是很长,遇到需要重新编译整个项目的时候真的有回宿舍睡一觉的冲动。昨天一不小心被我发现了一款软件Xoreax IncrediBuild ...
  • hjh2005
  • hjh2005
  • 2012-03-20 20:40:30
  • 4209

提升vc编译,链接速度

 提升vc的链接速度在庞大的工程是很有用的。以下要点:1.设计的时候要注意抽象层次,比如一个对象不应该知道太多的其他对象,如果这里面很复杂混乱,那就应该分解他们,或者使用另外的机制,类似事件传递来达到...
  • yacper
  • yacper
  • 2009-11-09 19:53:00
  • 3203

加快C++代码的编译速度方法

C++代码一直以其运行时的高性能高调面对世人, 但是说起编译速度,却只有低调的份了。比如我现在工作的源代码,哪怕使用Incredibuild调动近百台机子,一个完整的build也需要四个小时,恐怖!!...
  • Linear_Luo
  • Linear_Luo
  • 2016-09-29 10:09:03
  • 3892
收藏助手
不良信息举报
您举报文章:并行编译加快 VS C++ 项目的编译速度
举报原因:
原因补充:

(最多只允许输入30个字)