首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >利用.NET在局域网上构建分布式计算网格

利用.NET在局域网上构建分布式计算网格
EN

Stack Overflow用户
提问于 2014-08-28 22:55:25
回答 1查看 630关注 0票数 2

在我们公司,我们使用自己用.NET开发的软件来运行复杂的模拟。这些模拟非常适合并行计算,我们目前大量使用.NET原生的各种多线程功能。即便如此,模拟通常需要几个小时或几天的时间。

我们想要探索在我们的高性能(24核)工作站的本地网络上分布计算的潜力,以获得更多的CPU能力。然而,我们在这方面没有经验。

在谷歌上搜索会显示一些基于MPI的选项,如Pure MPI,MPI.NET,以及一些商业软件,如Frontier。

对于非常适合.NET环境并且相对容易设置的解决方案,我们应该考虑哪种解决方案?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-08-29 00:39:36

多线程!=网格计算,所以无论最终选择什么,您都需要重写应用程序的某些部分。

我不知道你的网络基础设施,但在我看来,就像你想使用普通的桌面工作站来运行分发代码一样。我不会用MPI来解决这个问题。MPI是为网络支持高带宽和低延迟的集群和超级计算机而开发的。这些都不是传统办公网络的特性(除非我理解错了)。

您必须处理的下一件事是,如果在计算机上执行计算,则用户不应该关闭计算机。没有网格计算平台(包括MPI)处理这类问题,因为它通常运行在故障很少的服务器硬件上,并且全天候运行。

我不认为有一个简单而廉价的解决方案。您可以在每台计算机上运行一个服务,该服务可以使用预定义的参数执行DLL中的代码并发送响应。这些程序集可以从某些windowsshare下载。但你想要像这样分布的真正巨大的工作空间。如果应用程序只运行一分钟或更短时间,您几乎不会得到任何改进。

最后,您还需要一个服务来查找那些在线或不在线的服务,某种内存数据库中的服务,其中每个服务都可以写入IP地址,并且它是在线的,这样客户端就可以知道他们可以将工作分发给谁。这可以使用RavenDB (正如你所说的你正在使用.Net),Redis或一个实际上是为解决这类问题而编写的应用程序,Zookeeper。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25551937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档