计算机通过执行程序,帮助科研人员进行科学研究。通常,计算机的使用者不关心程序的执行过程,他们只希望更快更有效地获取运算结果。而为了提供强大的计算能力,大量的计算资源以集群的形式出现。
随着IC验证仿真过程中对服务器资源的逐渐提高,再保证服务器资源成本以及数量的同事,运算的稳定以及效率的提高成为重中之重。有效的资源实现最大利用效率,谁就是赢家。
目前常用的调度集群:openlava lsf cubeman等逐步出现再大众视野。
本文以LSF为例介绍一下软件的相关服务:
通过上图可看出共涉及服务如下:
LIM:Load Information Manager,负载信息管理器,在集群中的每个主机上运行。 用来定义集群配置;
主要功能:1)负责运算机和master的通信(通信依赖于DNS解析或者本地host解析);2)表示master主机;3)采集资源信息
PIM:Process Information Manager,进程信息管理器,在集群中的每个 server 主 机上运行,负责收集在 server 上运行的每个进程的信息
mbatchd (MBD):Master Batch Daemon on Cube Master。每个集群中一个 MBD, 运行在 master 主机上。
主要功能:1)响应用户查询;2)接受/分发作业请求;3)保证系统整体的运行以及调度状态
说明:MBD宕机的情况下不会造成已经运行任务的丢失,会影响新增任务的调度,所以再短时间内恢复正常不会对集群造成严重影响。
sbatchd (SBD):Slave Batch Daemon。在集群中的每个 server 主机上运行,用于接受MBD分发的任务。
主要功能:1)再master节点中接受作业 ;2)负责负载
RES:Remote Execution Server,远程执行主机。服务器每当调度一个任务就会生成一个新的res
主要功能:运行分发的作业(jobs)