安装 Slurm

  1. 从软件源安装 slurm-wlm(每个节点都需要装的执行工具)、slurm-client(客户机装的提交命令的工具)、munge(节点间通信插件)

    sudo apt install slurm-wlm slurm-client munge
  2. 编写 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
  3. 复制 slurm.conf 到 /etc/slurm-llnl/ 文件夹下(多节点使用 scp 分发到每个节点)

    sudo cp slurm.conf /etc/slurm-llnl/slurm.conf
  4. 测试配置文件

    # 测试计算节点守护程序 slurmd
    sudo slurmd -D
    # 测试控制节点守护程序 slurmctld
    sudo slurmctld -D

    如果出现错误例如 File or Directory not found 等,一般是文件夹未建立,复制文件夹路径,使用 mkdir 建立,例如

    sudo mkdir '/var/spool/slurmctld/state'
  5. 重新启动服务(本文使用 service 服务)

    # 控制节点守护程序
    sudo service slurmctld restart
    # 计算节点守护程序
    sudo service slurmd restart
    # 通信插件
    sudo service munge restart
  6. 使用 sinfo 查看当前资源信息

    sinfo
    #正常工作会显示如下信息
    #PARTITION AVAIL TIMELIMIT NODES STATE NODELIST
    #mypartition* up infinite 1 idle AOBA-ALIENWARE

安装 OpenMPI

  1. 从软件源安装 OpenMPI

    sudo apt install openmpi
  2. 编写测试程序

    见文章 Notes of High Performance Computing Modern Systems and Practices 中 OpenMPI 章节中的测试程序

Slurm 和 OpenMPI 协作工作测试

  1. 编写批处理任务脚本 job.sh

    #!/bin/bash
    #SBATCH -N 1
    #SBATCH --ntasks 4
    #SBATCH --output test.out ## 通过 -N 指令指定节点数
    ## 通过 --ntasks 指定处理器需求数
    ## 通过 --output 指定输出文件
    ## 通过 --time 指定启动时间
    ## mpirun 运行编译好的可执行程序
    mpirun -np 4 ./test.exe
  2. 通过 sbatch 运行脚本

    sbatch job.sh
  3. 通过 squeue 查看运行状态

  4. 使用 cat test.out 查看输出文件

在 Linux 环境(Ubuntu)下安装 Slurm 和 OpenMPI的更多相关文章

  1. Linux之Ubuntu下安装屏幕录像软件(SimpleScreenRecorder)【摘抄】

    本博文全文属于摘抄自: (见文末处参考文献)(由于担心原博文丢失,以后查找不到,故此原文摘抄,以备日后多次查阅) 在日常工作中,有时需要对屏幕进行录像,以制作讲解文档等.下面介绍在Linux上安装屏幕 ...

  2. Linux环境Ubuntu上安装GitLab

    本文主要介绍在Ubuntu[Ubuntu 18.04.3]上安装最新的GitLab版本控制工具. 一.安装更新GitLab所需要的依赖项 sudo apt-get update 下载过程中,网络要有所 ...

  3. Linux/Kubuntu/Ubuntu下安装字体

    1>获得字体文件*.ttf,免费下载地址:http://www.font5.com.cn/ simfang.ttf 仿宋体 simhei.ttf 黑体 simkai.ttf 楷体 simsun. ...

  4. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

  5. 在Windows/Ubuntu下安装OpenGL环境(GLUT/freeglut)与跨平台编译(mingw/g++)

    GLUT/freeglut 是什么? OpenGL 和它们有什么关系? OpenGL只是一个标准,它的实现一般自带在操作系统里,只要确保显卡驱动足够新就可以使用.如果需要在程序里直接使用OpenGL, ...

  6. Fedora和Ubuntu下安装OpenGL开发环境配置

    Fedora下OpenGl开发环境配置 开发OpenGL工程需要3个库文件和对应的头文件: libglut.so,libGLU.so,libGL.so, gl.h ,glu.h, glut.h 这些库 ...

  7. Linux:Ubuntu下部署Web运行环境

    Linux:Ubuntu下部署Web运行环境 本次博客将会从三部分内容详述Ubuntu系统下Web运行环境的配置: 依次是:FTP服务器的搭建.MYSQL数据库的搭建.JDK的安装等. 参考文章如下: ...

  8. ubuntu 下安装eclipse &java环境配置

    前面有一篇的博客写的是ubuntu下安装eclipse和java环境的配置.当时是安装网上的攻略进行的 ,当然也是能够成功的. 近期把那台电脑送人了 ,仅仅好在自己的这台电脑上又一次安装一次了 ,唯一 ...

  9. Ubuntu下安装JDK以及相关配置

    1.查看系统位数,输入以下命令即可 getconf LONG_BIT 2.下载对应的JDK文件,我这里下载的是jdk-8u60-linux-64.tar.gz 3.创建目录作为JDK的安装目录,这里选 ...

  10. ubuntu下安装TexLive和Texmaker

    也可以参考ubuntu14.04配置中文latex完美环境(texlive+texmaker+lyx) 设置中文字体的时候参考ubuntu 下安装 texlive 并设置 ctex 中文套装 1.首先 ...

随机推荐

  1. RLHF技术在智能金融中的应用:提高金融智能化和自动化水平”

    目录 引言 随着人工智能技术的不断发展和普及,金融智能化和自动化水平也得到了显著提高.在这个时代,RLHF(Reinforcement Learning with Human Feedback)技术已 ...

  2. JAVA 环境搭建(java 8为例)

    JAVA 环境搭建 下载JDK(java 8为例) JDK下载地址:直达 JDK镜像网站: 编程宝库 java jdk镜像 安装JDK(java 8为例) 双击启动下载的exe文件 单击下一步 可以选 ...

  3. 吴恩达优化算法 (Optimization algorithms)笔记

    Mini-batch 梯度下降(Mini-batch gradient descent) 使用batch梯度下降法,一次遍历训练集只能让你做一个梯度下降,使用mini-batch梯度下降法,一次遍历训 ...

  4. UI自动化 --- 微软UI Automation

    引言 自动化测试平台的意义就三个字 --- 稳定性. 无论是接口自动化测试,还是UI自动化测试,目的就是为了提高产品的稳定性,保证用户体验. 那常见的接口自动化测试比如有 Postman ,SoapU ...

  5. 为什么 kubelet 不使用容器化部署?

    每日一问系列 为什么 kubelet 不使用容器化部署? 通过脚本(shell/ansible 等)在节点上部署 kubelet 服务时,涉及 kubelet 进程 service 启动配置.证书等, ...

  6. 安装Hadoop单节点伪分布式集群

    目录 安装Hadoop单节点伪分布式集群 系统准备 开启SSH 安装JDK 安装Hadoop 下载 准备启动 伪分布式模式安装 配置 配饰SSH免密登录本机 测试启动 单节点安装YARN 伪分布式集群 ...

  7. 从零玩转SpringBoot3-快速入门

    一.简介 1.前置知识 ​ ● Java17 ​ ● Spring.SpringMVC.MyBatis ​ ● Maven.IDEA 2.环境要求 环境&工具 版本(or later) Spr ...

  8. 解决php中通过exec调用python脚本报ModuleNotFoundError错误

    背景 出于某些原因,我们有时会在PHP中通过exec来调用Python代码,有可能是某些功能只能用Python实现(或用Python实现比较方便),有可能是出于性能考虑(Python可以执行耗时任务) ...

  9. MASABlazor在移动端点击保持出现悬停样式

    提出问题 最近在学习MAUIBlazor,用的MASA Blazor,发现在移动端(触屏设备)上,点击会一直显示悬停样式,如下图所示,简单研究了一下,发现这是移动端的通病. 解决问题 MASABlaz ...

  10. Android 架构模式如何选择

    作者:vivo 互联网客户端团队-Xu Jie Android架构模式飞速演进,目前已经有MVC.MVP.MVVM.MVI.到底哪一个才是自己业务场景最需要的,不深入理解的话是无法进行选择的.这篇文章 ...