大连人工智能计算平台——华为昇腾AI平台——高性能计算HPC的基础介绍

 

 

登入平台,选择高性能计算HPC,可以看到有两个选项,一个是控制台,一个是登录节点。其中,控制台是启动超算代码运行的入口,在里面我们可以编写运行模板,指定需要的计算资源及运行代码入口等;登录节点是我们对代码进行编译的地方。

 

 

 

 

进入控制台:

 

 

在控制台中最为主要的工作就是编写运行模板:

 

 

 

选择进入登入节点:

 

 

=======================================

 

首先给出 C 运行环境的配置:

 

demo代码,hello.c 

复制代码
#include "mpi.h"  
#include <stdio.h>  
#include <math.h>  
int main (int argc, char **argv)  
{  
int myid, numprocs;  
int namelen;  
char processor_name[MPI_MAX_PROCESSOR_NAME];  
MPI_Init (&argc, &argv);  
MPI_Comm_rank (MPI_COMM_WORLD, &myid);  
MPI_Comm_size (MPI_COMM_WORLD, &numprocs);  
MPI_Get_processor_name (processor_name, &namelen);  
fprintf (stderr, "Hello World! Process %d of %d on %s\n", myid, numprocs, processor_name);  
MPI_Finalize ();  
return 0;  
}
复制代码

 

 

 在编译前设置环境,编译后设置运行权限:(在登录节点中的操作)

复制代码
MPI_CC=/home/HPCBase/compiler/bisheng-compiler-2.1.0-aarch64-linux/bin
MPI_LIB=/home/HPCBase/HMPI/hmpi/lib/

export PATH=$MPI_CC:$PATH
export LD_LIBRARY_PATH=$MPI_LIB:$LD_LIBRARY_PATH



clang hello.c  -fPIC   -lmpi -o hello -I /home/HPCBase/HMPI/hmpi/include -L /home/HPCBase/HMPI/hmpi/lib/



chmod a+x hello
./hello
复制代码

 

 

在登录节点运行结果(编译结果):

 

 

在登录节点编译后,并进行了简单的测试,证明编译的代码没有问题。编译好代码后回到控制台编写运行作业。

 

 

 

 

提交作业后,运行成功:

 

 

 

 

 

=======================================

 

需要注意的是这里只是给出了基础的操作,所运行的C语言代码只实现了单机运行,关于其他的作业参数本文并没有给出具体介绍,余下的介绍留给后文。

 

 

知识点:

关于超算的MPI进程的启动需要知道的是共有两种启动方式,一个是在控制台中填写作业模板中的参数并提交;另一个方法是在登录节点直接调用作业提交命令dsub来进行提交。

 

关于超算平台的物理结构:(下图)

需要注意的是:

1. 我们的控制节点和登录节点都是这个master服务器;

2. master服务器并不应该进行任何计算,不过对于C语言来说依旧可以在master节点上进行编译的,当然理论上也不建议在master节点上进行大规模的编译工作,因为这个master节点的算力有限而且是公用的;

3. slave节点才是正在进行运行的节点,虽然master节点也可以进行单机运行,但是如果你敢在master节点上长时间运行代码要小心管理员找你细谈;

4. 我们使用者只能通过ssh或者web ssh访问master节点,并不能直接访问slave节点;

5. master节点通过dsub作业提交程序和所有slave节点进行连通,master节点不能通过ssh访问slave节点,也就是说master节点和slave节点是做了一定的隔离的;

6. master节点通过dsub与所有slave节点连接,所有slave节点彼此通过ssh互相连接(因为mpirun --host 就是通过ssh连接的);

7. 我们在master节点上上传的代码和数据以及作业其路径在master节点和slave节点上都是相同的,master节点和slave节点的磁盘结构和内容可以看做是相同的,slave节点相当于master节点的镜像(搞过Hadoop的人估计好理解这一点);

 

 

 

 

 

 

=======================================

 

posted on   Angry_Panda  阅读(161)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
历史上的今天:
2021-06-03 【转载】 集成学习
2017-06-03 转载 ------ 三次指数平滑法
2017-06-03 转载:二次指数平滑法求预测值的Java代码
2017-06-03 转载: 通过反射操作类的私有属性
2017-06-03 转载: 二次指数平滑法摘抄(原理详细)
2017-06-03 转载: Linux 操作系统挂起、休眠、关机相关命令

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示