我已经为 Android 交叉编译了 MPICH 并对其进行了配置。当我按如下方式生成单个进程时,它工作正常
$./mpiexec -n 1 -launcher=fork ./mpi_hello_world
Hello world from processor zero, rank 0 out of 1 processors
但是,如果参数“n”大于 1,Android 系统会响应以下错误,如下所示:
$./mpiexec -n 2 -launcher=fork ./mpi_hello_world
Fatal error in MPI_Init: Other MPI error, error stack:
MPIR_Init_thread(474).................:
MPID_Init(190)........................: channel initialization failed
MPIDI_CH3_Init(89)....................:
MPID_nem_init(272)....................:
MPIDI_CH3I_Seg_commit(327)............:
MPIU_SHMW_Seg_create_and_attach(897)..:
MPIU_SHMW_Seg_create_attach_templ(610): mkstemp failed No such file or directory
这可能与在 android 上创建的临时文件的名称有关?请帮忙。