这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
adf:并行数的设置 [2015/08/10 18:26] – liu.jun | adf:并行数的设置 [2016/05/10 23:00] (当前版本) – 移除 liu.jun | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== 如何进行ADF并行计算 ====== | ||
- | ADF已经自动包含了MPI等并行运算工具,不需要额外的编译。事实上重新编译对计算速度影响也很小。 | ||
- | 1,Linux | ||
- | |||
- | 1)单个工作站: | ||
- | 直接运行*.run文件: | ||
- | * | ||
- | * cd 目标文件夹 | ||
- | * | ||
- | * chmod 700 *.run | ||
- | * nohup ./*.run >*.out & | ||
- | * ctrl d退出,关闭命令行窗口。注意,如果不按ctrl d退出,直接关闭命令行窗口,则任务也自动被关闭。 | ||
- | * | ||
- | |||
- | 如果不设置NSCM,那么提交任务的时候,自动以该节点最大核数并行,无论是否有其他进程在运行中。 | ||
- | 如果要指定并行数,则在任务提交前命令行执行export NSCM=N即可,N表示您希望的并行数。 | ||
- | |||
- | 在这种运行方式下,系统的NSCM直接生效。即环境变量中设置的NSCM=N,则运行的时候,并行数即为N。N不能大于license允许的核数。如果没有设置NSCM,那么NSCM则自动赋值为运行计算的计算机的总核数。 | ||
- | |||
- | **集群**: | ||
- | 通过PBS脚本或者LSF脚本,将ADF的环境变量写入脚本,然后提交该脚本即可。如下是一个LSDF脚本范例(最后两行是关于ADF软件及运行的): | ||
- | #!/bin/sh | ||
- | APP_NAME=intelg_small | ||
- | NP=16 | ||
- | NP_PER_NODE=4 | ||
- | RUN=" | ||
- | source / | ||
- | / | ||
- | |||
- | PBS脚本也是类似的,只需要在标准脚本的基础上,写入最后两行相关的内容即可。 | ||
- | |||
- | 2)使用图形界面提交任务 | ||
- | |||
- | 使用图形界面提交任务,环境变量中NSCM的设置不能直接起效,而被图形界面中的Sequential或者interactive两种Queue中的NSCM所覆盖。改动方式: | ||
- | |||
- | ADFjobs界面:Queue — Edit Queue — Sequential,将export NSCM" | ||
- | |||
- | 另外,可以将Queue — Edit Queue — interactive,中的export NSCM" | ||
- | |||
- | Sequential和interactive的区别: | ||
- | |||
- | 前者:所有任务次第执行 | ||
- | 后者:所有任务一起运行 | ||
- | |||
- | 在ADFinput界面使用File — run提交,则默认采用Sequential方式。如果要改成Interactive方式运行,可以在ADFjobs界面,选中需要运行的任务,然后为它们指定为Interactive队列(指定方式:按住Shift键,选中多个任务后,Queue — Interactive),然后在这些任务呗选中的状态下,点击jobs — run,那么被选中的任务就按照Interactive的方式运行。 | ||
- | |||
- | 2,Windows | ||
- | |||
- | 与Linux“使用图形界面提交任务”相同 |