【发布时间】:2020-05-01 20:36:21
【问题描述】:
我正在尝试使用 MPI 编写并行 IO 程序,我需要将数据写入文件中,格式为:02 03 04 在文件中而不是2 3 4。
fprintf(fpOut,"%.2d ",var);
将是我正在尝试做的连续对应物。我环顾四周,但到目前为止找不到任何答案。有什么想法可以解决这个问题吗?
【问题讨论】:
标签: c parallel-processing mpi openmpi mpi-io
我正在尝试使用 MPI 编写并行 IO 程序,我需要将数据写入文件中,格式为:02 03 04 在文件中而不是2 3 4。
fprintf(fpOut,"%.2d ",var);
将是我正在尝试做的连续对应物。我环顾四周,但到目前为止找不到任何答案。有什么想法可以解决这个问题吗?
【问题讨论】:
标签: c parallel-processing mpi openmpi mpi-io
MPI_IO 写入二进制数据(相对于文本/格式化数据)。
所以如果真的要并行写,可以用一个中间缓冲区,然后再写,比如
char buf[4];
sprintf(buf, "%.2d ", var);
MPI_File_write_at(buf, 3, MPI_CHAR, ...);
话虽如此,您可能需要重新考虑您的工作流程:
【讨论】: