首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有分布式并行的好模式?

有没有分布式并行的好模式?
EN

Stack Overflow用户
提问于 2011-02-14 22:00:35
回答 2查看 621关注 0票数 0

我有一个for循环,我想用PLINQ的Parallel.ForEach()来并行化。

这里的关键是,我调用来进行计算的C++库肯定不是线程安全的,因此,任何计划将其并行化都需要跨多个进程进行。

我在考虑使用WCF来创建一个“分发器”进程,“客户端”和多个“计算器”可以连接到队列,并向队列添加/删除项目,然后“计算器”将结果直接发送回客户端,客户端可以在接收到结果时更新gui。这种架构将允许我使用尽可能多的“计算器”上线,就像我看到的那样,甚至可以跨多台计算机使用它们,从而创建一个所有客户端都可以共享的潜在的处理能力群。

我只是想知道是否有人有这样做的经验,是否有现有的应用程序块或框架可以用来为我构建它。PLINQ在进程中执行此操作。有没有DPLINQ (分布式)之类的?

另外,如果这不存在,有没有人想对我提出的架构提出意见?有什么明显的陷阱吗?有没有人认为它会成功!?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-25 10:20:09

听起来你可能在找Dryad。它现在是微软的一个研究项目,但他们确实有一个“学术版本”可用。我的理解是,他们也在2011年底的某个时候为RTM更好地生产它(可能是与Azure的某种集成)。Mary Jo Foley报道了更多关于这个here的内容。

票数 3
EN

Stack Overflow用户

发布于 2011-02-25 10:29:35

控制/调度分布式工作的一个长期标准是MPI。我只在C++中使用过它,但是存在许多语言的实现。快速谷歌提示,MPI.Net可能是.Net的一个很好的实现!

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

https://stackoverflow.com/questions/4993022

复制
相关文章

相似问题

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