在 Linux 环境(Ubuntu)下安装 Slurm 和 OpenMPI
安装 Slurm
从软件源安装 slurm-wlm(每个节点都需要装的执行工具)、slurm-client(客户机装的提交命令的工具)、munge(节点间通信插件)
sudo apt install slurm-wlm slurm-client munge
编写 slurm.conf 文件或者使用官网的 configurator.html 生成
# 控制节点名称
ControlMachine=AOBA-ALIENWARE
# 控制节点 IP
ControlAddr=127.0.1.1
CacheGroups=0
JobCredentialPrivateKey=/usr/local/etc/slurm/slurm.key
JobCredentialPublicCertificate=/usr/local/etc/slurm/slurm.cert
GroupUpdateTime=2
MailProg=/bin/true
MpiDefault=none
ProctrackType=proctrack/linuxproc
ReturnToService=1
SlurmctldPort=6817
SlurmdPidFile=/var/run/slurmd.%n.pid
SlurmdPort=6818
SlurmdSpoolDir=/var/spool/slurmd.%n
# slurm 执行用户
SlurmUser=slurm
# slurmd 守护程序执行用户
SlurmdUser=root
StateSaveLocation=/var/spool/slurmctld/state
SwitchType=switch/none
TaskPlugin=task/none
BatchStartTimeout=2
EpilogMsgTime=1
InactiveLimit=0
KillWait=2
MessageTimeout=2
MinJobAge=2
SlurmctldTimeout=2
SlurmdTimeout=2
Waittime=0
SchedulerTimeSlice=5
SchedulerType=sched/backfill
SchedulerPort=7321
SelectType=select/linear
AccountingStorageType=accounting_storage/filetxt
AccountingStorageLoc=/var/log/slurm/accounting
AccountingStoreJobComment=YES
ClusterName=mycluster
JobCompLoc=/var/log/slurm/job_completions
JobCompType=jobcomp/filetxt
JobAcctGatherFrequency=2
JobAcctGatherType=jobacct_gather/linux
SlurmctldDebug=3
SlurmdDebug=3
SlurmdLogFile=/var/log/slurm-llnl/slurmd.%n.log
# 节点信息
# NodeName 名称、Procs 处理器分配数、NodeAddr 地址、Port 端口、State 初始状态
NodeName=AOBA-ALIENWARE Procs=4 NodeAddr=127.0.1.1 Port=17001 State=UNKNOWN
# 执行模式
# PartitionName 名称、Nodes 使用节点、Default 默认、MaxTime 最大使用时间、State 初始状态
PartitionName=mypartition Nodes=AOBA-ALIENWARE Default=YES MaxTime=INFINITE State=UP
复制 slurm.conf 到 /etc/slurm-llnl/ 文件夹下(多节点使用 scp 分发到每个节点)
sudo cp slurm.conf /etc/slurm-llnl/slurm.conf
测试配置文件
# 测试计算节点守护程序 slurmd
sudo slurmd -D
# 测试控制节点守护程序 slurmctld
sudo slurmctld -D
如果出现错误例如 File or Directory not found 等,一般是文件夹未建立,复制文件夹路径,使用 mkdir 建立,例如
sudo mkdir '/var/spool/slurmctld/state'
重新启动服务(本文使用 service 服务)
# 控制节点守护程序
sudo service slurmctld restart
# 计算节点守护程序
sudo service slurmd restart
# 通信插件
sudo service munge restart
使用 sinfo 查看当前资源信息
sinfo
#正常工作会显示如下信息
#PARTITION AVAIL TIMELIMIT NODES STATE NODELIST
#mypartition* up infinite 1 idle AOBA-ALIENWARE
安装 OpenMPI
从软件源安装 OpenMPI
sudo apt install openmpi
编写测试程序
见文章 Notes of High Performance Computing Modern Systems and Practices 中 OpenMPI 章节中的测试程序
Slurm 和 OpenMPI 协作工作测试
编写批处理任务脚本 job.sh
#!/bin/bash
#SBATCH -N 1
#SBATCH --ntasks 4
#SBATCH --output test.out ## 通过 -N 指令指定节点数
## 通过 --ntasks 指定处理器需求数
## 通过 --output 指定输出文件
## 通过 --time 指定启动时间
## mpirun 运行编译好的可执行程序
mpirun -np 4 ./test.exe
通过 sbatch 运行脚本
sbatch job.sh
通过 squeue 查看运行状态
使用 cat test.out 查看输出文件
在 Linux 环境(Ubuntu)下安装 Slurm 和 OpenMPI的更多相关文章
- Linux之Ubuntu下安装屏幕录像软件(SimpleScreenRecorder)【摘抄】
本博文全文属于摘抄自: (见文末处参考文献)(由于担心原博文丢失,以后查找不到,故此原文摘抄,以备日后多次查阅) 在日常工作中,有时需要对屏幕进行录像,以制作讲解文档等.下面介绍在Linux上安装屏幕 ...
- Linux环境Ubuntu上安装GitLab
本文主要介绍在Ubuntu[Ubuntu 18.04.3]上安装最新的GitLab版本控制工具. 一.安装更新GitLab所需要的依赖项 sudo apt-get update 下载过程中,网络要有所 ...
- Linux/Kubuntu/Ubuntu下安装字体
1>获得字体文件*.ttf,免费下载地址:http://www.font5.com.cn/ simfang.ttf 仿宋体 simhei.ttf 黑体 simkai.ttf 楷体 simsun. ...
- 【转】linux和windows下安装python集成开发环境及其python包
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
- 在Windows/Ubuntu下安装OpenGL环境(GLUT/freeglut)与跨平台编译(mingw/g++)
GLUT/freeglut 是什么? OpenGL 和它们有什么关系? OpenGL只是一个标准,它的实现一般自带在操作系统里,只要确保显卡驱动足够新就可以使用.如果需要在程序里直接使用OpenGL, ...
- Fedora和Ubuntu下安装OpenGL开发环境配置
Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...
- Linux:Ubuntu下部署Web运行环境
Linux:Ubuntu下部署Web运行环境 本次博客将会从三部分内容详述Ubuntu系统下Web运行环境的配置: 依次是:FTP服务器的搭建.MYSQL数据库的搭建.JDK的安装等. 参考文章如下: ...
- ubuntu 下安装eclipse &java环境配置
前面有一篇的博客写的是ubuntu下安装eclipse和java环境的配置.当时是安装网上的攻略进行的 ,当然也是能够成功的. 近期把那台电脑送人了 ,仅仅好在自己的这台电脑上又一次安装一次了 ,唯一 ...
- Ubuntu下安装JDK以及相关配置
1.查看系统位数,输入以下命令即可 getconf LONG_BIT 2.下载对应的JDK文件,我这里下载的是jdk-8u60-linux-64.tar.gz 3.创建目录作为JDK的安装目录,这里选 ...
- ubuntu下安装TexLive和Texmaker
也可以参考ubuntu14.04配置中文latex完美环境(texlive+texmaker+lyx) 设置中文字体的时候参考ubuntu 下安装 texlive 并设置 ctex 中文套装 1.首先 ...
随机推荐
- 如何使用libavfilter库给pcm音频采样数据添加音频滤镜?
一.初始化音频滤镜 初始化音频滤镜的方法基本上和初始化视频滤镜的方法相同,不懂的可以看上篇博客,这里直接给出代码: //audio_filter_core.cpp #define INPUT_SAMP ...
- FHQ-Treap的详细图解
第一部分 按值分裂的 FHQ-Treap 按值分裂的 FHQ-Treap 的典型例题是P3369 [模板]普通平衡树. 思路 FHQ-Treap 是什么? FHQ-Treap 是二叉搜索树的一种. 比 ...
- 如何快速又高质量的输出PDF实验报告?
摘要:本文由葡萄城技术团队于博客园原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. PDF文档的打印在很多应用场景中都会被使用到,最为常见的就是实 ...
- v4l2采样usb摄像头并显示
ubuntu 思路: 1. 首先理解camera工作原理,重点理解 yuv,rgb视频流, 即Sensor数据输出的图像格式; 大体过程:光线通过镜头Lens进入摄像头内部,通过IR过滤掉红外光,抵达 ...
- Docker本地搭建个人企业私有云盘seafile搭建(完美解决ONLYOFFICE无法预览的情况)
seafile搭建 #创建存放路径 mkdir -p /media/megrez/data/seafile/seafile-mysql/db mkdir -p /media/megrez/data/s ...
- zabbix触发器标签提取监控项子字符串功能实现对应告警恢复
0 实验环境 zabbix 6.0 1 监控项 1.1 监控项设置 通过zabbix agent自定义监控项,读取某文件内容模拟日志/trap告警,测试获取触发器标签中提取子字符串功能,以及相同标签的 ...
- [python]为指定目录下的文件名批量加前缀
前言 功能描述:批量重命名指定目录下的文件,文件名加前缀,默认格式为"目录名_原文件名". 示例代码 import argparse import os import sys im ...
- quarkus依赖注入之十:学习和改变bean懒加载规则
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇是<quarkus依赖注入> ...
- 【译】基于XAML的跨平台框架对比分析
多年来,基于XAML的UI框架已经有了很大的发展.下面的图表是最好的说明.这些框架主要包含:支持跨平台应用的Avalonia UI, Uno Platform和 .NET MAUI.事实上,除了Ava ...
- SpringBoot3集成ElasticSearch
目录 一.简介 二.环境搭建 1.下载安装包 2.服务启动 三.工程搭建 1.工程结构 2.依赖管理 3.配置文件 四.基础用法 1.实体类 2.初始化索引 3.仓储接口 4.查询语法 五.参考源码 ...