当前位置: 首页 > 知识库问答 >
问题:

使用MPI划分工作

刘绍晖
2023-03-14

我一直坚持使用MPI将多个文件划分到多个节点的方法。

方法1
假设我有5个文件和5个节点,所有文件都存在于一个节点上。现在,是否有任何方法可以引导节点在不发送或接收任何数据的情况下读取所需的文件
例如,
文件1-

方法2
我的另一种方法是读取节点1上的所有文件,然后开始向节点2、3、4和5发送数据。

请让我知道,如果有任何其他好的方法,我应该遵循<提前谢谢。

共有1个答案

公良凯
2023-03-14

两者都是可能的,这取决于你需要什么。在不知道您要做什么的情况下,您需要问自己的问题是,所有文件是否都可以放在一个节点上的内存中?如果是,那么使用方法2是有意义的,如果不能将内存中的所有数据都放在一个节点上,那么使用方法1。

方法1看起来像

if(rank == 1){
//load file1 
}
 类似资料:
  • LAM/MPI 是一个高质量的MPI实现。 License: http://www.lam-mpi.org/community/license.php  

  • Open MPI 项目是一个开源消息传递接口实现,最初是作为从其他几个项目(FT- MPI, LA-MPI, LAM/MPI, 以及 PACX-MPI)融合的技术和资源 ,以建立和提供最佳的MPI库,为系统和软件供应商、应用开发者和计算机科研人员提供开放式的MPI 系统。 它易于使用,支持各种各样的操作系统,网络互连,以及一批/调度系统。 特点 完全符合 MPI-3.1 标准 线程安全和并发 动态

  • 我在这里看到过许多类似的线程,但我的问题是,我的程序实际上是在不同的设置下运行的。 例如:当我的矩阵是 对于2个核心:错误11 对于4,8,16等工作正常。 矩阵: 对于任何核心设置:错误11。 我不明白为什么会发生这种情况,每个过程都需要一个2048/(总过程)X 2028矩阵来计算。它应该工作正常。 以下是我声明矩阵的方式: 接收: 和发送: 我不明白,它应该起作用了。你认为这可能是内存问题,

  • 我在使用malloc和calloc创建动态数组时遇到问题。 输出是 你能告诉我我做错了什么吗?

  • 问题内容: 我的代码示例: 结果是: 我究竟做错了什么? 问题答案: 您尚未为结果指定比例。请尝试这个 2019编辑:已更新JDK 13的答案。因为希望您现在已从JDK 1.5迁移。 请阅读JDK 13 文档。 JDK 1.5的旧答案 : 结果将为0.33。请阅读API

  • 我的代码示例: 结果是:<代码>1/3=0 我做错了什么?