2

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

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

4

2 回答 2

3

您需要使用某种形式的通信来同步系统之间的进程。此类应用程序的常见 API 是使用消息传递接口 (MPI)。在 Windows XP 上工作的 MPI/MPI-2 有很多实现。

于 2011-04-13T17:42:17.727 回答
1

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

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

于 2011-04-13T17:44:23.103 回答