【问题标题】:MPI IO Writing a file when offset is not knownMPI IO 在偏移量未知时写入文件
【发布时间】:2014-10-15 09:56:32
【问题描述】:

我想使用 MPI IO 来写入文件。 这些进程处于一个while循环中,它调用一个生成随机数据量的函数。我想将此数据写入单个文件。 我怎样才能做到这一点?

【问题讨论】:

    标签: mpi mpi-io


    【解决方案1】:

    【讨论】:

    • 我已经检查过了。其实我不知道需要多少偏移或位移。
    【解决方案2】:

    在 while 循环的每次迭代中,每个进程都知道将写入多少数据。使用 MPI_SCAN 共享该数据,然后使用 MPI_File_write_at_all 集体写入:

          incr = generate_random_data();
          MPI_Scan(&incr, &new_offset, 1, MPI_LONG_LONG_INT, 
                          MPI_SUM, MPI_COMM_WORLD);
          new_offset -= incr;
    
          ret = MPI_File_write_at_all(mpi_fh, new_offset, buf, count,
                                  datatype, status);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-09
      • 1970-01-01
      • 2013-07-29
      • 1970-01-01
      • 1970-01-01
      • 2012-04-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多