在LAN中使用计算机进行并行计算

时间:2011-04-13 17:39:43

标签: c++ parallel-processing genetic-algorithm traveling-salesman

我正在编写一个C ++项目来使用Travelling salesman problem来解决genetic algorithms。当然,我想在同一局域网中使用一堆(约40台)计算机来加快速度。计算机都在运行Windows XP ......所以,问题是使用给定设备并行化它的方法是什么

更新: 你帮我把我的选择范围缩小到了一个Open MPI,所以剩下的唯一问题是我应该为它们使用boost MPI包装器吗?另外,你能推荐mpich / OpenMPI的教程吗?

2 个答案:

答案 0 :(得分:3)

您需要使用某种形式的通信来同步系统之间的进程。此类应用程序的常见API是使用Message Passing Interface (MPI)。 MPI / MPI-2有很多可以在Windows XP上运行的实现。

答案 1 :(得分:1)

MPI是此类项目最常用的标准之一。来自不同供应商的该标准有许多实现。我想你应该考虑其中两个:

另一个有趣的方法是使用OpenMP。有Cluster OpenMP实现。这种解决方案可能更容易实现,但在某些情况下不如MPI那么可扩展。