gpt4 book ai didi

c#-4.0 - C# HPC - MPI 和 OpenMP

转载 作者:行者123 更新时间:2023-12-02 19:11:05 24 4
gpt4 key购买 nike

我正在寻找有关 C# 和并行编程的一些指导。我知道 MPI .NET 存在,但不支持 OpenMP。那么我的问题是:是否有其他库(TPL?)或功能可以完成 OpenMP 提供的功能?我将(希望如此!)使用最新版本的 mono (C# .NET 4.0)。该代码将在 Cray XT6M 上运行,因此利用每 block 板和节点上的资源非常重要。感谢您的宝贵时间!

最佳答案

你可以看看Dryad是 Microsoft 的一种并行编程方法,其中 C# 实际上是一等公民。显然,微软将其用于 Bing 并训练 Kinect 的 body 跟踪算法 [2 ]。它使用比 OpenMP 更粗粒度的数据并行性。它更像是带有管道的进程,而不是带有共享内存的线程。

我担心在 Mono/Linux/Cray 系统上设置它至少可以说很困难。也就是说,C# 不是典型的 HPC 语言。在这种规模/类型的系统中高效运行 C# 通常非常困难。我建议评估将您的软件移植到“一流”HPC 语言,例如C、Fortran。

另请注意:OpenMP 无法在完整的 Cray XT6M 计算机(或任何 HPC 集群)上进行扩展,您可以使用这种形式的并行性(共享内存)。要在节点之间进行通信,您需要另一种形式的并行性,通常是 MPI。您还可以在节点内使用 MPI。

关于c#-4.0 - C# HPC - MPI 和 OpenMP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9025555/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com