gpt4 book ai didi

runtime-error - mpiexec检查点错误(RPi)

转载 作者:行者123 更新时间:2023-12-03 09:06:10 27 4
gpt4 key购买 nike

当我尝试运行应用程序时(只是一个简单的hello_world.c不起作用),每次都会收到此错误:

mpiexec -ckpointlib blcr -ckpoint-prefix /tmp/ -ckpoint-interval 10 -machinefile /tmp/machinefile -n 1 ./app_name

[proxy:0:0@masterpi] requesting checkpoint
[proxy:0:0@masterpi] checkpoint completed
[proxy:0:0@masterpi] requesting checkpoint
[proxy:0:0@masterpi] HYDT_ckpoint_checkpoint (./tools/ckpoint/ckpoint.c:111): Previous checkpoint has not completed.[proxy:0:0@masterpi] HYD_pmcd_pmip_control_cmd_cb (./pm/pmiserv/pmip_cb.c:905): checkpoint suspend failed
[proxy:0:0@masterpi] HYDT_dmxu_poll_wait_for_event (./tools/demux/demux_poll.c:77): callback returned error status
[proxy:0:0@masterpi] main (./pm/pmiserv/pmip.c:206): demux engine error waiting for event
[mpiexec@masterpi] control_cb (./pm/pmiserv/pmiserv_cb.c:202): assert (!closed) failed
[mpiexec@masterpi] HYDT_dmxu_poll_wait_for_event (./tools/demux/demux_poll.c:77): callback returned error status
[mpiexec@masterpi] HYD_pmci_wait_for_completion (./pm/pmiserv/pmiserv_pmci.c:197): error waiting for event
[mpiexec@masterpi] main (./ui/mpich/mpiexec.c:331): process manager error waiting for completion

我只想做一个检查点,什么都不做(以后再重启)。

提前致谢

更新:

我已经尝试过MPICH2,没有机会。或者也许我在某个地方错了...
pi@raspberrypi ~ $ mpiexec -n 1 -ckpointlib blcr -ckpoint-prefix /tmp/  -ckpoint-interval 2 ./test3
Count to: 0
[proxy:0:0@raspberrypi] requesting checkpoint
[proxy:0:0@raspberrypi] checkpoint completed
Count to: 1
[proxy:0:0@raspberrypi] requesting checkpoint
[proxy:0:0@raspberrypi] HYDT_ckpoint_checkpoint (/tmp/mpich/mpich2-1.5/src/pm/hydra/tools/ckpoint/ckpoint.c:111): Previous checkpoint has not completed.[proxy:0:0@raspberrypi] HYD_pmcd_pmip_control_cmd_cb (/tmp/mpich/mpich2-1.5/src/pm/hydra/pm/pmiserv/pmip_cb.c:902): checkpoint suspend failed
[proxy:0:0@raspberrypi] HYDT_dmxu_poll_wait_for_event (/tmp/mpich/mpich2-1.5/src/pm/hydra/tools/demux/demux_poll.c:77): callback returned error status
[proxy:0:0@raspberrypi] main (/tmp/mpich/mpich2-1.5/src/pm/hydra/pm/pmiserv/pmip.c:210): demux engine error waiting for event
[mpiexec@raspberrypi] control_cb (/tmp/mpich/mpich2-1.5/src/pm/hydra/pm/pmiserv/pmiserv_cb.c:201): assert (!closed) failed
[mpiexec@raspberrypi] HYDT_dmxu_poll_wait_for_event (/tmp/mpich/mpich2-1.5/src/pm/hydra/tools/demux/demux_poll.c:77): callback returned error status
[mpiexec@raspberrypi] HYD_pmci_wait_for_completion (/tmp/mpich/mpich2-1.5/src/pm/hydra/pm/pmiserv/pmiserv_pmci.c:196): error waiting for event
[mpiexec@raspberrypi] main (/tmp/mpich/mpich2-1.5/src/pm/hydra/ui/mpich/mpiexec.c:325): process manager error waiting for completion

Test3-代码:
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include <mpi.h>

int main(int argc, char* argv[]) {

int rank;
int size;
int i = 0;

MPI_Init(&argc, &argv);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);

MPI_Status status;

if (rank == 0) {
for(i; i <=100; i++){
int j = 0;
while(j < 100000000){
j++;
}
printf("Count to: %i\n", i);
}
} else {
}

MPI_Finalize();
return 0;

}

我只需要有一个成功的检查点并显示重启。
如果有人有一个可行的例子(无关紧要的事,简单的“Hello World”工作会让我高兴!),我将非常高兴。

新年快乐!

最佳答案

不幸的是,目前已知MPICH 3.0.4中的检查点/重新启动代码有问题。希望在将来的版本中可以解决此问题。看来您可能正确使用了它。如果您返回以前的版本,可能会更好。

关于runtime-error - mpiexec检查点错误(RPi),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20668042/

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