繁体   English   中英

并行计算

[英]Parallel computing

我有一个二维表(矩阵)我需要独立于其他矩阵处理该矩阵中的每一行。 每条线的过程都很耗时。 我想在我们大学使用并行计算资源(Canadian Grid something)

我可以就如何开始提供一些建议吗? 我之前从未使用过并行计算。

谢谢 :)

从这里开始: http//docs.python.org/library/multiprocessing.html

请务必阅读: http//docs.python.org/library/multiprocessing.html#examples

这可能会有所帮助: http//www.slideshare.net/pvergain/multiprocessing-with-python-presentation

虽然优秀,它包括线程和多处理,即使多处理通常远远优于尝试多线程。

对于网格计算,多线程很大程度上是无用的。

此外,您可能还想阅读芹菜

我是一个名为scoop的新库的开发者之一。

它完全是为此目的而构建的(网格或超级计算,科学计算)。 我建议你试一试。

在你的情况下,所有你需要做的就是这样的调用:

futures.map(YourFunc, matrixLine)

然后它将在您的网格或您选择的任何环境中分发。

从你的描述,我会说:首先看看numpy Numpy提供了以近似C速度以矢量化方式计算列和行的方法。 根据您的问题,这可能比使用纯CPython并行计算更快。

你可以使用numpy -arrays的并行计算来获得非常快的速度。 可能的方法是在群集上使用multiprocessingIpython

就像评论员所说的那样,找一个人在你的大学里聊天。 您的问题的答案将特定于网格上安装的软件。 如果您可以访问网格,很可能您也可以访问一个人的工作就是回答您的问题(并且他们很乐意提供帮助) - 找到这个人!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM