联系电话: 029-88202685

邮箱: xdhpc@xidian.edu.cn

快速入门

此处略去用户申请过程,首先我们需要能够连接到中心的工具。

Putty:优点:开源,轻便,免费。

打开Putty:
建立连接:

 

接受服务器公钥(hostkey,首次使用需要):

依次输入用户名和密码(注意:密码输入时,不会显示任何字符):

登录成功后界面:

接下来,我们来运行一些基本的Linux命令:

说明:

[zhaoyue@xdhpc03 ~]$           zhaoyue表示当前的用户名,xdhpc03是当前登录的节点的名字

[zhaoyue@xdhpc03 ~]$ pwd       显示当前路径
/home/zhaoyue                   用户自己家目录默认为  /home/用户名 
[zhaoyue@xdhpc03 ~]$ ls           列出当前目录下的所有文件   
[zhaoyue@xdhpc03 ~]$ ls -l           列出当前目录下的所有文件的详细信息  
[zhaoyue@xdhpc03 ~]$ mkdir data         创建data目录
[zhaoyue@xdhpc03 ~]$ cd data               进入data目录    
[zhaoyue@xdhpc03 data]$ pwd                显示当前路径
/home/zhaoyue/data
[zhaoyue@xdhpc03 data]$ cd ..           返回上层目录      
[zhaoyue@xdhpc03 ~]$ pwd
/home/zhaoyue

 

运行C程序

 

[zhaoyue@xdhpc03 data]$ vim helloworld.c

说明:
vim 为Linux下常用的编辑器,helloworld.c为文件名,如果当前目录下不存在该文件,则新建并编辑,如果存在,打开并编辑。
按下 i 键进入插入模式:

键入C程序:

#include <stdio.h>
int main()
{
printf("Hello world!\n");
return(0);
}

输入完成后按下 Esc 键 退出插入模式,然后输入 :wq 写入并退出。
此时,输入ls,应该能看到刚刚建立的文件

[zhaoyue@xdhpc03 data]$ ls
helloworld.c
接下来,我们要调用系统的编译器来将我们刚才建立的helloworld.c源程序编译成可执行文件:

[zhaoyue@xdhpc03 data]$ gcc helloworld.c
[zhaoyue@xdhpc03 data]$ ls
a.out  helloworld.c
说明:
gcc 是系统的C编译器,后面接你的源程序。
使用 ls 列出当前目录内容 可以看到生成了名为a.out的程序。

接下来执行 a.out 查看下结果:

[zhaoyue@xdhpc03 data]$ ./a.out
Hello world!
说明:
./a.out 中 . 代表当前目录。 Hello world! 即为程序的输出了。

 

问题是刚才运行的这个程序是在当前登录的这个节点,也就是xdhpc03上运行的,这个节点是用户的登陆节点,这个节点是禁止运行大量的、长时间占用CPU时间的程序的。此时我们就需要使用调度系统将我们的程序投放到其它计算节点上来运行。

 

首先需编辑一个作业提交脚本文件:如:helloworld.pbs

[zhaoyue@xdhpc03 data]$ vim helloworld.pbs

键入:

#PBS -N hello                                    ###说明:作业名字为hello
#PBS -l nodes=1:ppn=1                           ###说明:声明使用一个节点,每节点使用1个 核心   
#PBS -l walltime=12:00:00                         ###说明:最大运行12小时
#PBS -q cpu1                                         ###说明:用cpu1队列
#PBS -V
#PBS -S /bin/bash
### intel mpi
###source /opt/intel/impi/4.1.1/bin64/mpivars.sh
cd $PBS_O_WORKDIR                                                          ###进入到工作目录(当前目录)
NP=`cat $PBS_NODEFILE | wc -l`
NN=`cat $PBS_NODEFILE | sort | uniq | tee /tmp/nodes.$$ | wc -l`
cat $PBS_NODEFILE > /tmp/nodefile.$$                                              ##说明:生成指定的节点目录         
mpirun -genv I_MPI_DEVICE rdssm -machinefile /tmp/nodefile.$$ -n $NP ./a.out        ###说明: 使用mpirun 使程序在nodefile.$$(系统指定的节点目录) 执行a.out
rm -f /tmp/nodefile.$$                                                             ###说明:删除临时文件

 

:wq 保存并退出

 

提交作业:

[zhaoyue@xdhpc03 data]$ qsub helloworld.pbs
2709.xdhpc01


生成作业:编号2709

 

 作业完成,生成结果文件:任务名.o作业号

[zhaoyue@xdhpc03 data]$ ls
a.out  hello.e2709  hello.o2709  helloworld.pbs

查看结果:

[zhaoyue@xdhpc03 data]$ cat hello.o2709
Hello world!



版权所有:西安电子科技大学高性能计算中心

地址:陕西省西安市太白南路2号

电话:029-88202685

邮编:710071

技术支持:西安聚力

访问量: