中科大曙光4000A并行机 如何使用及具体上机操作步骤

 1.下载远程登录软件。多种选择,我用的是SSHSecureShellClient

 

2.安装完成后运行SSHSecureShellClient,点击最左侧的“quick connect”,输入相关信息:

        host name: 210.45.114.190   

        user name:guest

        port:22

        authentication:默认

        填写完毕,点击“connect”后会要求输入密码,为:guest 。

3.登录成功后会以 guest 的身份进入命令行,依次执行如下操作:

         a)  mkdir SC12011007   //记得把后面的学号部分换成你自己的学号,这会在远程主机的guest默认目录下创建以你学号命名的文件夹

        

         b) cd SC12011007       //进入你刚才创建的个人目录,在本目录下完成程序的编辑,编译及运行

        此处,中科大的同学可以直接把老师放在主页上的c代码直接上传到服务器,省得自己一行一行码。方法:点击工具栏上的图标,进去后可以看到remote mane 里有你刚刚新建的由你学号命名的文件夹,在左侧的“local name ”中把老师写好的C源码全部选中,然后点击,把C文件传到以你学号命名的文件夹中。

 

         c) nano hello.c              //用nano编辑器来创建hello.c文件,进入编辑器后开始输入程序内容(见教材194面),黄刘生老师给你C文件中没有包含hello.c。科大的同学如果要运行hello,请自行输入。输入完后按Ctrl+O 保存退出,确认是否保存文件,直接按下enter键。此时你用一下 ls 命令,你就能看到你刚才编辑保存的 hello.c 文件了,科大的同学会看到很多文件(那些都是你自己刚刚上传的……)。

        

         d) omcc -o  hello hello.c  //调用OpenMP的编译命令,对hello.c进行编译,生成可执行文件为 hello .如果编译出错的话,说明你的代码有误,需要再回到步骤 c)  对源程序进一步修改,修改完成后再次编译,直到编译程序不报错位置。此时你再用一下 ls -l  命令,就会在当前目录下看到有三个文件 : hello.c(源文件) , hello.o (目标文件,这也是为什么上面的 -o 选项后不能为 hello.o的原因)  ,hello (可执行文件)。

 

         e)  ./hello   //执行刚才生成的可执行文件,你就会看到相应并行效果的,不出意外的话会有8行输出,这说明系统默认线程数目为 8

 

         f)  export OMP_NUM_THREADS=4  //此命名是用来导入环境变量的,设置系统默认线程数目为4的,当然你也可以改为其他值,大家不妨多试试。

        

         g) ./hello   //对默认线程数目修改后,再次运行可执行文件,你会看到不一样的输出的。

 

4.对于MPI程序编译和运行命令有所不同,大家可以试着输入一下教材 108 面的示例程序,按照下面的编译及运行命令看一下效果

        

         a) 用步骤3种同样的方法创建 simple.c文件,并保存

        

         b) 编译:  mpicc simple.c -o simple -lm            注:涉及库函数调用时在后面加-lm,涉及矩阵乘法的时候如果出现如下错误提示:p0_18495:  p4_error: Child process exited while making connection to remote process on node2: 0
Killed by signal 2.               解决办法:在主目录下直接输入(注意source后面有空格):source /home/guest/.bashrc

        

         c) 运行:  mpirun -np 2  simple  ***     //-np 后面的参数为参与并行运算的处理器个数,大家可以自己设置的。 ***部分视具体程序而定。

原文地址:https://www.cnblogs.com/yuzeren48/p/2733473.html