问题标签 [mpiexec]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - MPI 正确的 EC2 上的处理器数量
我使用 starcluster 在 ec2 上设置了一个集群,并设置了 scipy 堆栈(包括 mpi4py)。我被告知要发布一个 mpi 作业,其处理器数量与集群中的处理器数量相匹配。例如,如果我创建一个实例类型的 4 节点集群,其中每个集群有 2 个 vcpu,我是否发出:
mpiexec -n 4 python mytestfile.py
或者
mpiexec -np 8 python mytestfile.py
此外,我如何确定每个节点实际上处理 2 个问题实例,而不是一个节点处理所有 8 个?换句话说,是否会mpiexec自动解决所有这些问题?
ssh - 无法通过 ssh 执行 mpiexec 命令
我有多个虚拟机,我想使用这些虚拟机执行并行处理。我编写了一个使用 ssh 连接到虚拟机的程序。mpiexec 命令应在 VM 上通过 ssh 执行。但是,这没有发生,我什至没有收到错误消息
我不认为 mpiexec 正在执行我做错了什么?
mpi - mpiexec vs mpirun
As per my little knowledge mpirun and mpiexec both are launcher. Can anybody tell the exact difference between mpiexec and mpirun?
mpich - MPICH 停止跨多个节点运行
我有一个使用 MPICH 的 MPI fortran 应用程序,如果我使用它可以毫无问题地启动/运行:
在上面的例子中,我问的是 2 个节点,一旦集群上的每个节点都有 8 个 cpu。
问题是我的 /home 是通过头节点安装在计算节点上的 NFS,并且对这些磁盘的 i/o 非常慢。此外,我的应用程序有很多 i/o,根据经验,过多的 i/o 到 NFS 安装的磁盘到头节点会锁定头节点(这很糟糕),并且它可能会变得完全没有响应。
集群系统有一个磁盘,在每个节点上为每个 JOB 本地挂载(我可以使用环境变量 TMPDIR 来到达这个目录),所以我的作业需要在这个磁盘下运行。知道了这一点,我的策略就很简单了:
- 将文件从 /home 移动到 $TMPDIR
- 在 $TMPDIR 开始模拟
- 模型停止后,将应用程序的输出返回到 /home
如果我执行上述所有步骤,只要求一个节点的集群系统(PBS/Torque),就没有问题。
但如果我问的不止一个节点
我收到以下错误:
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:1@compute-4-5.local] HYDU_create_process (/tmp/mvapich2-1.8.1/src/pm/hydra/utils/launch/launch.c:69):文件 /state/ 上的 execvp 错误partition1/74127.beach.colorado.edu/myMODEL.a(没有这样的文件或目录)
[proxy:0:0@compute-0-1.local] HYD_pmcd_pmip_control_cmd_cb (/tmp/mvapich2-1.8.1/src/pm/hydra/pm/pmiserv/pmip_cb.c:955): 断言 (!close) 失败
[proxy:0:0@compute-0-1.local] HYDT_dmxu_poll_wait_for_event (/tmp/mvapich2-1.8.1/src/pm/hydra/tools/demux/demux_poll.c:77):回调返回错误状态
[proxy:0:0@compute-0-1.local] main (/tmp/mvapich2-1.8.1/src/pm/hydra/pm/pmiserv/pmip.c:226):等待事件的解复用引擎错误
[mpiexec@compute-0-1.local] HYDT_bscu_wait_for_completion (/tmp/mvapich2-1.8.1/src/pm/hydra/tools/bootstrap/utils/bscu_wait.c:70):其中一个进程严重终止;中止
[mpiexec@compute-0-1.local] HYDT_bsci_wait_for_completion (/tmp/mvapich2-1.8.1/src/pm/hydra/tools/bootstrap/src/bsci_wait.c:23):启动器返回错误等待完成
[mpiexec@compute-0-1.local] HYD_pmci_wait_for_completion (/tmp/mvapich2-1.8.1/src/pm/hydra/pm/pmiserv/pmiserv_pmci.c:191):启动器返回错误等待完成
[mpiexec@compute-0-1.local] main (/tmp/mvapich2-1.8.1/src/pm/hydra/ui/mpich/mpiexec.c:405):进程管理器错误等待完成
我究竟做错了什么?
errno - 扭矩 qsub mpiexec 错误。错误号:9
我已经在具有 2 个节点的 Raspberry Pi 集群上安装了 Torque 4.2.0。在服务器上安装 Torque_server 和 Torque_sched,在节点上安装 Torque_mom。我设法成功运行 qsub 脚本,但是,在安装“其他”mpiexec 之后(如此处建议:http ://www.cslu.ogi.edu/~zak/debianclusters/MPICH_with_Torque_Functionality ),如果我运行运行 mpiexec 的 qsub 脚本我收到以下错误:
socket_connect 错误(验证 trqauthd 正在运行)连接到 trqauthd 时出错(-1)-[无法连接到 socket_connec t_addr 中的端口 -1 - errno:9 错误的文件描述符] 与 MasterCruz2(172.20.45.225)mpiexec 通信时出错:错误: get_hosts:pbs_connect:没有错误。
我做了一些研究,但除了一封死胡同的旧电子邮件外什么也找不到。有什么帮助或想法吗?
pbs - 程序结束时 Mpiexec 无法终止
我在集群上运行 mpi 程序。当程序结束时,工作不会。所以我必须等待它超时。
我不确定如何调试它。我检查了程序是否到达了 MPI 中的 finalize 语句,并且确实如此。我正在使用 lib Elemental。
程序的最后几行
输出将是
parallel-processing - Torque 不限制 mpiexec 使用的节点数量
所以我同时运行以下这些 pbs 文件:
qsub /mnt/文件夹/prueba1_1 qsub /mnt/文件夹/prueba01
这里是文件
prueba1_1
prueba01
文件 machinefile 包含 2 个节点 slave02 和 slave03,每个节点都有 1 个处理器
尽管我指定每个 pbs 文件每个作业应仅使用 1 个节点和 1 个处理器(#PBS -l nodes=1:ppn=1),但输出文件似乎表明每个作业同时使用两个节点。我想知道为什么这些 pbsfiles 应该只使用一个节点和 1 个处理器,对我来说应该是 prueba1_1 应该使用 slave02 和 1 个处理器,而 prueba01 也应该使用 slave02,但应该使用另一个处理器。
输出文件在这里
salida1_1.o
萨利达01.o
python - mpiexec 和 python mpi4py 给出等级 0 和大小 1
我在虚拟机上运行 python Hello World mpi4py 代码时遇到问题。
hello.py 代码是:
我尝试使用 mpiexec 和 mpirun 运行它,但它运行得不好。输出:
并来自 mpiexec:
他们似乎没有得到通讯的等级和大小。什么会导致这种情况?如何解决?
该系统是虚拟机上的 Ubuntu 14.04。
任何想法为什么?谢谢!
dll - mpiexec,不复制 DLL
在我的 Windows 测试中,我有兴趣使用 localhost 运行 MPI,而无需复制 DLL 的资源开销。我宁愿使用在调用环境中定义的 PATH 。我一直无法在我一直调用的 mpiexec 上执行此操作,即使将“-envlist PATH”传递给 mpiexec。
根本问题是,当我调用编译后的可执行文件时,我收到错误代码“-1073741515”,这告诉我我缺少依赖项。当我将 DLL 复制到该目录时(我不想这样做),我得到一个非错误代码“0”。
为了测试,我使用了我使用的“printenv.exe”命令。我使用 mpiexec 运行它,以表明 PATH 实际上并未在调用环境中设置。
我试图阻止复制 DLL,而是使用 PATH。我不能将 PATH 传递给被调用的环境吗?
数据:我正在使用 MPICH2,v1.4.1p2。
c++ - 具有用户定义函数的 MPI_Reduce 在某些进程上不断崩溃
在使用 MPI_Reduce 时,我需要处理一些复杂的数据结构。所以我需要使用 MPI_Op_create 来定义我自己的 reduce 函数。但问题是,一个或多个进程一直在崩溃,即使在非常简单的用户定义函数上也是如此,这与 MPI_SUM 完全相同。
代码附在下面。请注意,如果我将 MPI_Reduce 中的参数从“myOp”更改为“MPI_SUM”,则代码可以完美运行。所以我很确定问题出在用户定义的函数“myOp”上。但在函数“MAX_DataSet”中进一步调试表明该函数正常工作,内部结果正确。但是程序根本无法正确执行 MPI_Reduce。那是什么原因......非常感谢任何帮助!