我们正在运行一些繁重的计算,可以采取很多时间(甚至数天)。 我们有类似的编译器(编译+连接器)的架构:
- 数据的许多块需要被计算的(它们由solver.exe可执行计算) -类似于一个编译器
- 一个采集应用程序,将所有的成绩进入最终形式-类似于连接器
我所看到的是, distcc的确实在网络上的分布相当不错。 不幸的是distcc的工作unix环境下。
有没有办法,可以提供类似于distcc并不东西,但在Windows(7+)平台的平台?
稍后编辑:添加了C ++的标签,因为如果这样的框架存在,我们会从我们的C ++编程经验中获益。
我不知道的Windows任何自由/开源解决方案,但有两个商业产品可以帮助:
ElectricAccelerator可从电云。 ElectricAccelerator可最初被设计来加速软件构建,但可以以计算机网络分发任意过程中并行执行。 根据你所说的,应该是直接使用加速器为您的需求。 它可用于Linux和Windows。
Xoreax Incredibuild也原本旨在加快软件构建,但像加速器,Incredibuild可以任意分配的过程。 它仅适用于Windows。
免责声明:我ElectricAccelerator可建筑师
的FastBuild是免费的,开源的。 它适用于Windows / Linux的/ OSX。 它有自己的构建配置文件的语言。 您可以将本地网络连接到工人和交付工作,他们在客户机上安装的工人。 的FastBuild适用于C ++,应该可能是任何语言工作,因为你可以设置任何编译器可执行文件和依赖性(编译器分配给工人,从而使您不必设置编译器每台机器上)。 我发现唯一的缺点是,为了工人你需要设置与可写文件夹在Windows网络共享客户端连接,我认为这是非常不方便的方法来设置构建集群,更好的办法是写与列表的配置服务器的,也许这将是固定在未来。 另外的FastBuild集群只能在本地的网络上运行,将是巨大的,有可能,虽然互联网设置多台计算机,它不应该是难以实现,还互联网连接应该被加密,以确保秘密来源。