如何在多台计算机上运行并行程序(用户指定的IP地址)?

时间:2011-05-25 16:38:34

标签: c# parallel-processing

我是并行编程的新手。我研究了很多关于使用MPI和Windows HPC服务器的SOA编程模型。但现在我比以前更加困惑。手头的任务是在多台计算机上运行程序(IP地址将由用户提供),该程序采用数百万字符串的输入文件并提取某些区域。我已完成编程(在C#& .net4 fw中)并已在一台计算机上成功测试过。但问题是我必须使其并行以加快速度。我只是想让某人向我展示一种不涉及使用MPI的方法。我希望我的问题很清楚。

感谢。

4 个答案:

答案 0 :(得分:5)

您可以尝试Dryad。它包含类似LINQ的API。

答案 1 :(得分:0)

您需要在需要打开并侦听请求的目标计算机上实例化某些行为。我建议您investigate WCF通过您的网络进行通信。

根据您的环境,安全性通常是此类项目的一个有趣障碍。

答案 2 :(得分:0)

您可以尝试重新设计应用程序以将silverlight用作客户端处理器。

http://www.codeproject.com/KB/silverlight/gridcomputing.aspx

答案 3 :(得分:0)

如果我理解你的问题,一个解决方案是改变你的程序,以便它在一些端口上监听工作,并让它在一堆计算机上运行。然后,您希望在一台或多台计算机上运行作业提交者。提交者可以接收与运行程序的计算机子集相对应的IP地址,然后与已经运行的程序实例进行通信,向他们提供他们尚未掌握的关于他们要做的工作的哪些部分的信息

在许多计算机上运行的工作程序是“服务”,作业提交程序是“客户端”。