- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MPI并行程序的编译和运行(适用于数学楼机房,其它并行环境下可能有所区别)
源程序的编译(C语言): mpicc [选项] 源程序
其中常用选项有:
-c :只编译,不链接,即只生成目标文件(.o 文件)
-o filename :指定输出的文件名,缺省通常为 a.out
-Ipath :指定(增加)头文件(如 *.h)的搜索路径(目录)
-Lpath :指定(增加)库文件的搜索路径(目录)
-lname :与库文件 libname.a 链接
优化开关:-O,-O2,-O3,等,常用为 -O2
-g :使得目标码中包含源文件名、行号等信息(用于程序调试)
例:mpicc –O2 –o hello_world hello_world.c
源程序的编译(Fortran): mpif77 [选项] 源程序
其中常用选项有:
-c :只编译,不链接,即只生成 .o 文件
-o filename :指定输出文件名,缺省为 *.a,a.out 等
-Ipath :指定(增加)包含文件(如 *.h)的搜索路径(目录)
-Lpath :指定(增加)库文件的搜索路径(目录)
-lname :与库文件 libname.a 链接
优化开关:-O,-O2,-O3,等等
-g :使得目标码中包含源文件名、行号等信息(用于程序调试)
-Wno-globals :忽略一些警告消息
例:mpif77 –O2 -Wno-globals –o hello hello.f
用mpirun提交并行任务
mpirun -np 4 -machinefile nodename 可执行文件
-np 用于指定启动的进程数,这里启动4个进程;
可执行文件 是用户所要提交的任务,即编译生成的可执行文件。
文件 nodename中包含的是结点的机器名,一行写一个。
例:mpif77 –O2 -o cpi cpi.f
mpirun –machinefile host -np 8 cpi
( mpirun –f host -np 8 cpi )
在机群上通过联想的作业调度软件递交作业
首先登录到机群服务器(ssh 222.204.244.252),将你的并行程序重新编译一次,生成相应的可执行文件;
由于机群使用的是联想的ljrs作业调度软件,所以必须通过ljrs脚本提交并行作业;下面是一个 ljrs 脚本模板,递交并行作业时只需在其基础上进行适当修改即可:#!/bin/bash # Job name #LJRS -N cpi # Queue name #LJRS -q dpool # Number of nodes and process per nodes #LJRS -l nodes=2:ppn=2 # Name of your program need to run prog=a.out cd $LJRS_O_WORKDIR NPROCS=`wc -l $LJRS_NODEFILE` mpirun -v -machinefile $LJRS_NODEFILE -np $NPROCS $prog 注:第一行不要改动;第二行是个解释语句;第三行用来指定任务的名称,这里是 cpi,你可以根据自己的需要进行修改(不一定要与你运行的程序同名);第四、五、六行不需要改动;第七行表示使用多少个结点、每个结点开多少个进程来运行你的任务,如 nodes=3:ppn=4 表示用3个结点,每个结点启动4个进程,共12个进程;第八行不需要改动;第九行是指定你所需运行的(可执行)文件,如prog=a.out 表示运行的可执行文件名为a.out;最后几行不需要修改。
脚本写好后保存为myjob(即脚本文件名),然后通过下面的命令来提交并行任务
qsub myjob
任务递交成功后,系统会返回一个任务号(或作业号),如:
85.console
其中85表示任务号,后面的console表示从哪个机群递交的任务。任务运行完成后会 生成两个文件:标准输出和标准错误,分别为 cpi.o85和cpi.e85,其中“cpi”是 任务名,“o”和“e”分别表示output和error,“85”是任务号。
一些常用命令
查看可用结点使用情况:shownodes
查看作业队列:showq
查看指定作业的状态:qstat –f 作业号
检查指定作业的情况:checkjob –v 作业号
删除作业:qdel 作业号
例: qstat –f 85 表示查看85号作业 qdel 85 表???取消85号作业
LJRS介绍
LJRS是联想资源管理与作业调度系统
您可能关注的文档
最近下载
- GBT1804—2000自由公差标准.doc VIP
- 雅马哈DD-55C使用说明书.pdf VIP
- 化工原理练习与答案.doc
- 《梁瑞安期货交易随笔》.PDF VIP
- ZZ058 动漫制作赛题 第1套-2024年全国职业院校技能大赛双数年拟设赛项赛题.pdf VIP
- ZZ058 动漫制作赛题 第2套-2024年全国职业院校技能大赛双数年拟设赛项赛题.pdf VIP
- ZZ058 动漫制作赛题 第9套-2024年全国职业院校技能大赛双数年拟设赛项赛题.pdf VIP
- ZZ058 动漫制作赛题 第8套-2024年全国职业院校技能大赛双数年拟设赛项赛题.pdf VIP
- 食品工程单元操作-学习情境3 传热.ppt VIP
- ZZ058 动漫制作赛题 第6套-2024年全国职业院校技能大赛双数年拟设赛项赛题.pdf VIP
原创力文档


文档评论(0)