作者:不点包子 | 来源:互联网 | 2023-09-25 12:38
求Linux下LSF使用的资料LSF(LoadSharingFacility)是分布资源管理的工具,用来调度、监视、分析联网计算机的负载。目的:1,通过集中监控和调度,充分共享计算
求Linux 下LSF使用的 资料
LSF(Load Sharing Facility)是分布资源管理的工具,用来调度、监视、分析联网计算机的负载。
目的:
1, 通过集中监控和调度,充分共享计算机的CPU、内存、磁盘、License等资源
2, 一组安装了LSF软件的计算机组成一个Cluster
3, Cluster内的资源统一监控和调度
LSF批量bkill任务
LSF:Load Sharing Facility
例:bkill所有PSUSP状态的任务
单个用户
(bkill -u username 0,删除该用户下所有提交的并行任务)
bjobs -u username | grep PSUSP|awk '{print $1}' |xargs bkill
所有用户
bjobs -u all -p -q normal | grep PSUSP|awk '{print $1}' |xargs bkill
(-p参数,可有可无,不影响命令执行结果)
PS:常用LSF命令(更详细命令使用可参考LSF的PDF手册)
bjobs 检查提交作业状态
bjobs –r 显示正在运行的作业
bjobs –a 显示正在运行的和最近完成的作业
bjobs -p 显示等待运行的作业和等待原因
bjobs –s 显示正在挂起的作业和挂起的原因
bjobs -l 显示该作业的所有信息
bhist 显示最近完成作业或正在运行作业的历史情况
bhist jobid
bkill 删除不需要的作业
bkill jobid
bkill –r jobid
bpeek 当作业正在运行时显示它的标准输出,监视作业运行
bpeek jobid
bqueues 显示队列信息
bqueues
bqueues –l queue name
bhosts 显示各节点作业相关情况
bhosts
bhosts hostname
linux的lsf和pbs的区别
LSF abbr. 分布式异构计算机环境的负载管理系统(Load Sharing Facility) Today's popular queuing systems include some pay for products such as: LSF and PBS Pro. 当今流行的队列系统包括一些付费产品,比如 LSF 和 PBS Pro。
LSF 作业管理系统
在 上一篇 中我们简要介绍了 PBS 作业管理系统,下面我们将介绍 LSF 作业管理系统。
LSF (Load Sharing Facility)是一个被广泛使用的作业管理系统,具有高吞吐、配置灵活的优点。通过 LSF 集中监控和调度,可以充分利用计算机的CPU、内存、磁盘等资源。
可以通过以下三种方法使用 bsub 来提交作业:
可以直接在 bsub 的命令行中输入完整的参数来提交一个作业,比如:
其中所用的参数说明如下:
这种方式比较适合提交简单的作业,更复杂的作业控制需要编写作业脚本。
LSF 作业脚本本质上也是一个 shell 脚本,在其中可以用 #BSUB开头的行来指明 bsub作业参数。下面是一个 LSF 作业脚本示例:
其中各参数说明如下:
提交作业脚本,使用下面的命令:
在终端中输入 bsub 并回车后会进入 bsub 交互环境,在其中可输入作业参数和执行作业程序。在 bsub 交互环境下可以一次提交多个参数相同的作业,例如:
使用 Ctrl+D 可退出 bsub 交互环境。
可以用 bjobs 命令查看用户正在运行中的作业:
使用 -l参数和某个作业的 JOBID,可以查看该作业的详细信息:
使用 bkill 命令中止某个作业:
以上简要介绍了 LSF 作业管理系统,在 下一篇 中我们将介绍 SLURM 资源管理系统。
如何与多个用户环境中运行的PBS
如何在集群环境中使用fluent计算——fluent并行计算初步(超小白入门,老鸟略过:)
作者:jinsw
现在国内的开放式机群环境越来越多,许多都部署了fluent(大好事),不过还是有许多人不太清楚如何利用这些有用的资源。这里结合我所在单位的情况做一个简单的介绍,其他的机群环境大同小异。
1、 什么是机群?有什么特点?
机群又叫集群,当然就是许多的计算机(废话),因为机器太多了,又需要协同工作,所以需要按照一定的方式来管理,管理的结构形式叫做拓扑(这个不用管)。机群使用的电脑是刀片(又薄又长的机箱)形式(为了便于插入机柜),一个刀片一般称为一个节点。
一般而言,机群会分为三种节点:管理节点(若干台),编译节点(若干台),计算节点(其余全部)。这三种节点的配置略有不同(废话),管理节点主要用来存储使用机群的用户的信息,如名字,密码,可以使用机器数的权限,用户状态等等;编译节点一般用来预查程序故障,用户的程序先在这里试运行,查看是否与系统兼容等;计算节点用来直接计算其他节点提供来的程序。
就配置而言,管理节点和编译节点一般相同,会部署软件环境;计算节点只会部署简单的必要运行文件。计算机点之间会采用高速交换机,速度可达几十GB/s,如IB等;计算节点与编译、登陆节点之间采用普通的万兆交换机。
2、 如何使用机群?
机群中一般采用linux操作系统来操作(多用户情况下效率高),用户会通过远程登录软件(如xshell)来登录到登陆节点进行个人的操作(一般会通过VPN网络加密数据传输)。
Linux集群将程序任务分解发送到计算节点上时,是通过LSF作业调度系统(也有其他的,如PBS等)来实现的,这个系统的作用是使整个机群负载均衡,便于管理,所以我们使用fluent也要通过这个系统。在成熟的集群中,用户登录之后,默认便可以使用作业调度系统了。使用时,除了常见的linux命令以外,调度系统也有一些简单的命令,这个一般会有手册介绍,常用的就3、5个,很好记。
3、 如何在集群中使用fluent?
因为fluent是成熟的封装好的商业软件,所以用户直接使用命令调用即可。
但是因为大部分的linux下的远程登录是不支持图形界面的,所以我们看不到在windows下的熟悉界面,无法进行操作。其实,fluent最早也是linux下的软件,它提供了一种jou脚本来操作各种命令(即帮助中的TUI命令),我们在windows的图形界面中,也可以在控制台窗口中查看如何使用。这样,我们在启动fluent软件时,指定它的jou执行脚本即可使软件按照我们的意图来进行操作了。如果在帮助中找太慢,可以在windows的fluent图形界面下,右下角控制台中用回车键显示文字命令,q键返回。
4、 实例
这里给出一个在LSF调度系统中使用fluent的实例:
首先,使用bsub命令提交LSF脚本(名字为fluent.lsf),在命令窗口中键入:bsub fluent.lsf即可。
脚本内容如下:
#!/bin/sh (这句话是说此脚本使用/bin/sh来解释执行,小白可以略过)
APP_NAME=fluent (这句话是说此脚本调用名字为fluent的集群排序提交队列,小白继续略过)
NP=2 (这句话是说此脚本的任务将调用2个CPU core来执行)
NP_PER_NODE=1 (这句话是说此脚本的任务将在分配用来执行任务的每个节点上调用1个CPU core来执行)
RUN="fluent 2ddp -g -i fluent.jou -r15.0.0 -pib –mpi=pcmpi" (这句话是说此脚本的执行命令以及参数,2ddp 是指二维双精度类型计算,这个大家应该熟悉了;fluent.jou就是我们使用的fluent命令执行脚本的名字)
fluent.jou脚本内容实例:
/file/read-case ./boil-unstdy.cas (读取cas文件,boil-unstdy.cas)
/file/read-data ./boil-unstdy.dat (读取dat文件,boil-unstdy.dat)
define/user-defined/compiled-function/compile (定义编译函数库并制定编译文件)
libudf
yes
boiling-rpi-model.c
define/user-defined/compiled-function/load (加载编译函数库)
libudf
/file/auto-save/data-frequency 100 (自动保存)
/solve/initialize/initialize-flow(初始化)
/solve/dual-time-iterate (求解循环设置)
500
20
/file/read-data ./boil-unsteady-out.dat (保存结果)
exit (退出fluent)
yes