<分区>
Rust 如何处理分布式内存并行性?就此而言,我指的是语言结构、库或其他功能来处理类似于 MPI 提供的 C 的集群之类的计算,但不一定使用相同的原语或方法。在 Rustonomicon 中,我看到了关于线程和并发的讨论,但我没有看到任何关于跨多台计算机并行化的讨论。
<分区>
Rust 如何处理分布式内存并行性?就此而言,我指的是语言结构、库或其他功能来处理类似于 MPI 提供的 C 的集群之类的计算,但不一定使用相同的原语或方法。在 Rustonomicon 中,我看到了关于线程和并发的讨论,但我没有看到任何关于跨多台计算机并行化的讨论。
最佳答案
据我所知,分布式计算语言实际上并没有内置任何东西(这是可以理解的,因为可以说这不是该语言的主要重点,或者至少在当时不是这样)。我不相信有任何特别流行的 crate 或其他用于分布式计算的 crate 。 Actix可能是唯一获得任何牵引力的 actor crate,它支持 HTTP,但我不认为它是针对 HPC/ super 计算机设置的。您肯定也想查看 Tokio ,这似乎是 Rust 中用于异步编程的 库,并且专门针对网络 IO 操作。
目前,如果您希望复制 MPI,我猜您最好的选择是将 FFI 用于基于 C 的 MPI 库。似乎有 a handful of attempts为 Rust 创建到 MPI 的绑定(bind),但我不确定它们是否特别完整。
关于parallel-processing - Rust 如何处理分布式内存并行性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52674215/