PBS管理系统--torque
GPU集群Torque排队系统使用手册
GPU集群Torque排队系统使⽤⼿册多媒体计算与通讯实验室GPU集群Torque排队系统使⽤⼿册袁平波 2016.5.20本实验室新购进24块K80 tesla GPU。
为了充分利⽤GPU计算资源,我们利⽤Torque来管理同学们的计算任务队列。
头结点的IP是192.168.17.240。
下⾯说明使⽤本GPU集群的⼏个步骤。
1.申请帐号.本集群有⼀个头结点和多个服务结点构成,因此提交计算作业需要在头结点上拥有帐号,需要使⽤集群的学⽣需要给我发⼀个申请邮件,同时cc给⾃⼰的导师,在导师批准后相应的帐号会被建⽴。
2.建⽴job脚本⽂件Torque管理系统不能直接提交⼆进制可执⾏⽂件,需要编写⼀个⽂本的脚本⽂件,来描述相关参数情况。
⼀个⽰例脚本⽂件myjob1.pbs如下:#PBS -N myjob1#PBS -o /home/username/myjob1.out#PBS -e /home/username/myjob1.err#PBS -l nodes=1:gpus=1:S#PBS -r ycd $PBS_O_WORKDIRecho Time is `date`echo Directory is $PWDecho This job runs on following nodes:cat $PBS_NODEFILEcat $PBS_GPUFILE./my_proc脚本⽂件中定义的参数默认是以#PBS开头的。
其中:-N 定义的是job名称,可以随意。
-o 定义程序运⾏的标准输出⽂件,如程序中printf打印信息,相当于stdout;-e 定义程序运⾏时的错误输出⽂件,相当于stderr。
-l 定义了申请的结点数和gpus数量。
nodes=1代表⼀个结点,⼀般申请⼀个结点,除⾮采⽤mpi并⾏作业;gpus=1定义了申请的GPU数量,根据应⽤实际使⽤的gpu数量来确定,S表⽰job类型,后⾯有详细描述。
曙光作业管理-调度系统安装配置手册
Torque + Maui配置手册之抛砖引玉篇本文将以应用于实际案例(南航理学院、复旦大学物理系、宁波气象局)中的作业调度系统为例,简单介绍一下免费开源又好用的Torque+Maui如何在曙光服务器上进行安装和配置,以及针对用户特定需求的常用调度策略的设定情况,以便可以起到抛砖引玉的作用,使更多的人关注MAUI这个功能强大的集群调度器(后期将推出SGE+MAUI版本)。
本文中的涉及的软件版本Torque 版本:2.1.7 maui版本:3.2.6p17。
1. 集群资源管理器Torque1.1.从源代码安装Torque其中pbs_server安装在node33上,TORQUE有两个主要的可执行文件,一个是主节点上的pbs_server,一个是计算节点上的pbs_mom,机群中每一个计算节点(node1~node16)都有一个pbs_mom负责与pbs_server通信,告诉pbs_server该节点上的可用资源数以及作业的状态。
机群的NFS共享存储位置为/home,所有用户目录都在该目录下。
1.1.1.解压源文件包在共享目录下解压缩torque# tar -zxf torque-2.1.17.tar.gz假设解压的文件夹名字为: /home/dawning/torque-2.1.71.1.2.编译设置#./configure --enable-docs --with-scp --enable-syslog其中,默认情况下,TORQUE将可执行文件安装在/usr/local/bin和/usr/local/sbin下。
其余的配置文件将安装在/var/spool/torque下默认情况下,TORQUE不安装管理员手册,这里指定要安装。
默认情况下,TORQUE使用rcp来copy数据文件,官方强烈推荐使用scp,所以这里设定--with-scp.默认情况下,TORQUE不允许使用syslog,我们这里使用syslog。
PBS作业调度系统
❖ 系统资源整合
异构系统的整合
❖ 多用户的管理
用户提交的任务的统一安排,避免冲突
❖ 用户权限的管理
非授权用户的控制
作业调度系统的简史
作业调度系统的分类
❖ 基于进程级别的调度
由机群中的操作系统或者运行时Runtime内部支持, 对运行的作业进行监控;以实现机群内的透明调度、 以及自动优化进程的分配和平衡负载
PBS 的基本原理
PBS 的优缺点
✓ 符合POSIX 1003.2d 标准 ✓ 支持系统级检查点功能
(需底层操作系统支持)
✓ 很好的大规模扩展性 ✓ 独立的调度模块 ✓ 支持作业依赖和用户映射
➢ 只支持Unix类操作系统 ➢ 多集群协作功能有限 ➢ 不支持用户级检查点功能
术语
❖ 节点(node)
❖ 编译设置
[root@node1 tmp]#./configure --set-server_home=/var/spool/pbs --enabledocs --enable-syslog
默认情况下,TORQUE将可执行文件安装在/usr/local/bin和/usr/local/sbin下。 其余的配置文件将安装在/var/spool/torque下
一个单一的操作系统映像,一个统一的虚拟内存映像一个个或多 个cpu,一个或多个IP地址的计算机系统被称之为一个节点。通常 执行主机(execution host)也被称之为节点。
❖ 节点属性
队列、服务器和节点都有与自己相关的属性,这些属性提供控制 信息。与节点相关的属性有:状态、类型、虚拟处理器的个数、 作业列表(本节点被分配给的作业)以及节点的特性。……
服务进程配置和启动文件
资源管理软件TORQUE 与作业调度软件Maui 的安装、设置及使用
资源管理软件TORQUE与作业调度软件Maui的安装、设置及使用李会民(hmli@)中国科学技术大学网络信息中心2008年1月目录1资源管理软件TORQUE的安装与设置21.1服务节点安装TORQUE (2)1.2服务节点初始化并设置TORQUE (2)1.3计算节点上安装TORQUE (4)1.4计算节点配置TORQUE (4)2安装与配置作业调度软件:Maui52.1服务节点上安装Maui (5)2.2服务节点上配置Maui (5)3作业运行63.1串行作业 (7)3.2并行作业 (8)3.3常用作业管理命令 (8)3.3.1查看队列中的作业状态:qstat (9)3.3.2挂起作业:qhold (10)3.3.3取消挂起:qrls (10)3.3.4终止作业:qdel和canceljob (10)3.3.5查看作业状态:checkjob (11)3.3.6交换两个作业的排队顺序:qorder (12)3.3.7选择符合特定条件的作业的作业号:qselect (12)3.3.8显示队列中作业的信息:showq (13)3.3.9显示节点信息:pbsnodes和qnodes (13)1资源管理软件TORQUE的安装与设置TORQUE和Maui可以从上下载。
以下仅是粗略配置,详细配置请参考相关手册:•TORQUE:/torquedocs21/•Maui:/products/maui/docs/mauiusers.shtml1.1服务节点安装TORQUE这里假设服务节点的机子名为kd50,其中一个计算节点的名字为node0101。
root@kd50#tar zxvf torque-2.2.1.tar.gzroot@kd50#cd torque-2.2.1root@kd50#./configure–prefix=/opt/torque-2.2.1–with-rcp=rcp上面–with-rcp=rcp设置为利用rsh协议在节点间传输文件,也可设置为–with-rcp=scp以利用scp协议进行传输。
pbs作业管理系统
当为1是表示守护进程启动,0为守护进程不启动
start_mom=1
• 系统启动脚本 /etc/init.d/openpbs
• Server的系统启动脚本 /etc/init.d/pbs_server
• Scheduler系统启动脚本 /etc/init.d/pbs_sched
• Mom系统启动脚本 /etc/init.d/pbs_mom
30
PBS 作业脚本举例
2020/7/12
31
详细示例
编辑PBS脚本内容如下:(注意,#PBS行不是注释,所有说明行均 以###开始,即红色字体部分)
###声明作业名为mpi
#PBS -N mpi ###申请资源数为10个节点,每个节点16个cpu
#PBS -l nodes=10:ppn=16 ###将标准输出信息与标准错误信息合并输出到文件中
• 编译安装
[root@node1 /public/OpenPBS_2.3.16]# make [root@node1 /public/OpenPBS_2.3.16]# make install
2020/7/12
15
PBS在机群上安装
由于节点系统相同,因而可以用如下SHELL script在 node2~node8上安装;
• 编译设置Leabharlann [root@node1 /public/OpenPBS_2.3.16]#./configure --disable-gui -set-server_home=/var/spool/pbs --enable-docs --xlibraries=/usr/X11R6/lib64
其中,--x-libraries=/usr/X11R6/lib64是在X86_64 (AMD64或 EM64T)上安装时,需要指明系统64位库的位置。
PBS 使用方法
pbs_server_attributes(7) - Linux man pageNamepbs_server_attributes - pbs server attributesDescriptionServer attributes can be read by any client; privilege is not required. Most server attributes are alterable by a privileged client, run by a user with administrator or operator privilege. Certain attributes require the user to have full administrator privilege. The following is a list of the server attributes.accounting_keep_daysThis defines the number of days that accounting files will be kept. Default value: unset - pbs_server will never delete accounting files Format: integeracl_group_sloppyThis is a default value for the queue attribute of the same name. Format: boolean, "TRUE", "True", "true", "Y", "y", "1", "FALSE", "False", "false", "N", "n", "0"; default value: false = disabled.acl_host_enableAttribute which when true directs the server to use the acl_hosts access control lists.Requires full manager privilege to set or alter. Format: boolean, "TRUE", "True", "true", "Y", "y", "1", "FALSE", "False", "false", "N", "n", "0"; default value: false = disabled.acl_hostsList of hosts which may request services from this server. This list contains the network name of the hosts. Local requests, i.e. from the server's host itself, are aways accepted even if the host is not included in the list. See section 10.1, Authorization, in the PBS External Reference Specification. Requires full manager privilege to set or alter. Format: "[+|-]hostname.domain[,...]"; default value: all hosts.acl_logic_orThis is a default value for the queue attribute of the same name. Format: boolean, "TRUE", "True", "true", "Y", "y", "1", "FALSE", "False", "false", "N", "n", "0"; default value: false = disabled.acl_user_enableAttribute which when true directs the server to use the server level acl_users access list.Requires full manager privilege to set or alter. Format: boolean (see acl_group_enable);default value: disabled.acl_usersList of users allowed or denied the ability to make any requests of this server. See section10.1, Authorization, in the PBS External Reference Specification. If acl_user_enable isset to true, only users listed in acl_users may submit to or execute jobs in the queue.Requires full manager privilege to set or alter. Format: "[+|-]user[@host][,...]"; default value: all users allowed.acl_rootsList of super users who may submit to and execute jobs at this server. If the job execution id would be zero (0), then the job owner, root@host, must be listed in this access control list or the job is rejected. Format: "[+|-]user[@host][,...]"; default value: no root jobs allowed.allow_node_submitAllow job submissions from compute nodes regardless of ruserok(). Requires full manager privilege to set or alter. Format: boolean; default value: disabled.allow_proxy_userSpecifies users can proxy from one user to another. Proxy requests will be either validated by ruserok() or by the scheduler. Format: boolean; default value: false.auto_node_npAutomatically configure a node's np value based on the ncpus value from the status update. Requires full manager privilege to set or alter. Format: boolean; default value: disabled.clone_batch_delayNumber of seconds to delay between cloning a batch for a job array. Format: integer;default value: 1.clone_batch_sizeNumber of jobs to clone in a batch for a job array. Format: integer; default value: 256. credential_lifetimeThe number of a seconds that a client connection may stay connected without re-authenticating. Default is 3600 seconds.commentA text string which may be set by the scheduler or other privileged client to provideinformation to the batch system users. Format: any string; default value: none.default_nodeA node specification to use if there is no other supplied specification. This attribute isonly used by servers where a nodes file exist in the server_priv directory providing a list of nodes to the server. If the nodes file does not exist, this attribute is not set by default and is ignored if set. The default value allows for jobs to share a single node. Format: a node specification string; default value: 1#shared.default_queueThe queue which is the target queue when a request does not specify a queue name.Format: a queue name; default value: none, must be set to an existing queue.down_on_errorSet a node's state to "down" if MOM reports a message beginning with the string "ERROR". This might interfere with moab's node error handling. See the HEALTH CHECK section in pbs_mom(8B). This is an EXPERIMENTAL feature and may beremoved in the future. Format: boolean; default value: false.disable_server_id_checkMakes it so the user for the job doesn't have to exist on the server. The user must still exist on all the compute nodes or the job will fail when it tries to execute. Format: boolean; default value: falseextra_rescAdd additional string-type job resources. They have no effect within TORQUE and are only advisible to the scheduler. They can not be used for resources_default/min/max.Format: list; default value: none.job_force_cancel_timeIf configured, number of seconds after a delete where a job will be purged by the server.If not configured, no such thing happens. Format: integer; default value: not used.job_nannyEnables the "job deletion nanny" feature. All job cancels will create a repeating task that will resend KILL signals if the initial job cancel failed. Further job cancels will be rejected with the message "job cancel in progress." This is useful for temporary failures with a job's execution node during a job delete request. It is possible that the job nanny might interfere with job restarts, migrations, and checkpointing. Format: boolean; default value: false.job_start_timeoutSpecifies the pbs_server to pbs_mom TCP socket timeout in seconds that is used when the pbs_server sends a job start to the pbs_mom. It is useful when the mom has extra overhead involved in starting jobs. If not specified then the tcp_timeout value is used.job_stat_rateModerates how often job stat requests will be issued from pbs_server to the MOM daemons. If poll_jobs is unset or false, then all jobs that haven't been updated in job_stat_rate seconds will trigger a stat request. If poll_jobs is true, then all jobs will be updated every job_stat_rate. (see poll_jobs) On active clusters, 60 or 120 might be reasonable. Default value: 45 seconds (PBS_RESTA T_JOB in server_limits.h) Minimum value: 4 seconds (PBS_JOBSTA T_MIN in server_limits.h)keep_completedNumber of seconds to retain completed jobs in the C state. This is overridden by the execution queue attribute of the same name. Format: integer; default value: 0.kill_delayThe amount of the time delay between the sending of SIGTERM and SIGKILL when a qdel command is issued against a running job. This is overridden by the execution queue attribute of the same name. Format: integer seconds; default value: 2 seconds.lock_fileSpecifies the name and location of the lock file used to determine which high availability server should be active.If a full path is specified, it is used verbatim by TORQUE. If a relative path is specified, TORQUE will prefix it with $TORQUE_HOME/server_priv. Format: string; default value: $TORQUE_HOME/server_priv/server.locklock_file_update_timeSpecifies how often (in seconds) the thread will update the lockfile. (for threaded high availability) Format: integer; default value: 3lock_file_check_timeSpecifies how often (in seconds) a high availability server will check to see if it should become active. (for threaded high availability) Must be greater than lock_file_update_time. Format: integer; default value: 9log_eventsA bit string which specifies the type of events which are logged, see the section on EventLogging in chapter 3 of the ERS. Format: integer; default value: 511, all events.log_file_max_sizeIf this is set to a value > 0 then pbs_server will roll the current log file to logfile.1 when its size is greater than or equal to the value of log_file_max_size. This value is interpreted as kilobytes.log_file_roll_depthIf this is set to a value >=1 and log_file_max_size is set then pbs_server will continue rolling the log files to logfile.log_file_roll_depth.log_keep_daysIf this is set then logs older than X days will be removed by the server. Format: integer;default value: not enforced;log_levelControls the verbosity of server logs. This value ranges from 0 to 7 with 7 representing maximum verbosity. Format: integer; default value: 0, minimum verbosity.mail_body_fmtOverride the default format for the body of outgoing mail messages. A number of printf-like format specifiers and escape sequences can be used:\nnew line\thorizontal tab\\backslash\'single quote\"double quote%ddetails concerning the message%hPBS host name%iPBS job identifier%jPBS job name%mlong reason for message%rshort reason for message%%a single %Format: a printf-like format string; Default value: "PBS Job Id: %i\nJob Name: %j\nExec host: %h\n%m\n%d\n".mail_domainOverride the default domain for outgoing mail messages. If set, emails will be addressed to "euser@mail_domain". If unset, the job's Job_Owner attribute will be used. Format: a domain name; Default value: none.mail_fromSet the From: header for all outgoing emails from pbs_server. Format: an email address;Default value: "adm".mail_subject_fmtOverride the default format for the subject of outgoing mail messages. A number of printf-like format specifiers and escape sequences can be used:\nnew line\thorizontal tab\\backslash\'single quote\"double quote%ddetails concerning the message%hPBS host name%iPBS job identifier%jPBS job name%mlong reason for message%rshort reason for message%%a single %Format: a printf-like format string; Default value: "PBS JOB %i".mail_uidThe uid from which server generated mail is sent to users. Format: integer uid; default value: 0 for root.managersList of users granted batch administrator privileges. Format: user@host.sub.domain[,user@host.sub.domain...]. The host, sub-domain, or domain name may be wild carded by the use of an * character, see the description of user access control lists in chapter 10.1.1 of the ERS. Requires full manager privilege to set or alter.Default value: root on the local host.max_job_array_sizeSpecifies the maximum number of jobs that can be in any requested job array. Arrays requesting more jobs than configured will be rejected. Format: integer; default value: Unlimited.max_slot_limitNo array can request a slot limit greater than 10. Any array that does not request a slot limit receives a slot limit of 10. Using the example above, slot requests greater than 10 are rejected. A slot limit is the maximum number of jobs from an array that can run concurrently. Format: integer; default value: Unlimited.max_runningThe maximum number of jobs allowed to be selected for execution at any given time.Advisory to the Scheduler, not enforced by the server. Format: integer.max_user_runThe maximum number of jobs owned by a single user that are allowed to be running from this queue at one time. This attribute is advisory to the Scheduler, it is not enforced by the server. Format: integer; default value: none.max_group_runThe maximum number of jobs owned by any users in a single group that are allowed to be running from this queue at one time. This attribute is advisory to the Scheduler, it is not enforced by the server. Format: integer; default value: none.mom_job_syncEnables the "job sync on MOM" feature. When MOMs send a status update, and it includes a list of jobs, server will issue job deletes for any jobs that don't actually exist.Format: boolean; default value: true.next_job_numberThis hidden attribute is used to allow a manager to set the value of the next job ID via qmgr. This attribute should rarely be modified. Some sites may find it useful if they need to recreate their pbs_server database (perhaps due to a format change between major TORQUE versions) and they keep a database of job information indexed by the job ID.The manager should be careful to avoid setting the value to something that would allow the next job number to conflict with a job already queued, however Torque will handle this in a sane manner: the job submission will be rejected and the next job number will be incremented.net_counterLists the 3 numbers representing the number of connections in the last 5 seconds, 30 seconds, and 60 seconds. This is a read-only attribute. Format: string; default value: none. node_check_rateIn OpenPBS, this was the rate at which pbs_server would poll each node. In TORQUE, nodes periodically send updates without solicitation from pbs_server; this attribute is nowused as the maximum number of seconds allowed without an update before pbs_server will consider the node down. Format: integer; default value: 150node_ping_rateSpecifies the maximum interval (in seconds) between successive pings sent from the pbs_server daemon to the pbs_mom daemon to determine node/daemon health. Format: integer; default value: 300node_packControls how multiple processor nodes are allocated to jobs. If this attribute is set to true, jobs will be assigned to the multiple processor nodes with the fewest free processors. This packs jobs into the fewest possible nodes leaving multiple processor nodes free for jobs which need many processors on a node. If set to false, jobs will be scattered across nodes reducing conflicts over memory between jobs. If unset, the jobs are packed on nodes in the order that the nodes are declared to the server (in the nodes file). Default value: unset - assigned to nodes as nodes in order that were declared.node_suffixAdds a domainname to node names before IP lookups. Format: string; default value: none.np_defaultnp_default allows the administrator to unify the number of processors (np) on all nodes.The value can be dynamically changed. A value of 0 tells pbs_server to use the value of np found in the nodes file. The maximum value is 32767. Format: integer; default value: not used.operatorsList of users granted batch operator privileges. Format of the list is identical with managers above. Requires full manager privilege to set or alter. Default value: root on the local host.owner_purgeAllows job owners to forcibly purge their own jobs from the server. This short-circuits the normal flow of events and is hightly discouraged. Default value: unsetpoll_jobsControls how pbs_server will send job status requests to MOMs. When unset or false, statjob requests from clients (ie: qstat(1B) or the scheduler) may trigger job status requests to MOMs and and must wait until the MOMs have replied; this is suitable for small to medium sized clusters. When set to true, pbs_server will send periodic job status requests; this is suitable for busy clusters with lots of jobs, lots of clients, qstat(1B) is too slow, or your scheduler times out. (see job_stat_rate) Default value: TRUEquery_other_jobsThe setting of this attribute controls if general users, other than the job owner, are allowed to query the status of or select the job. Format: boolean (see acl_host_enable); Requires full manager privilege to set or alter. default value: false - users may not query or select jobs owned by other users.resources_availableThe list of resource and amounts available to jobs run by this server. The sum of the resource of each type used by all jobs running by this server cannot exceed the totalamount listed here. Advisory to the Scheduler, not enforced by the server. Format: "resources_available.resource_name=value[,...]".resources_costThe cost factors of various types of resources. These values are used in determining the order of releasing members of synchronous job sets, see the section on Synchronize Job Starts. For the most part, these value are purely arbitrary and have meaning only in the relative values between systems. The cost of the resources requested by a job is the sum of the products of the various resources_cost s and the amount of each resource requested by the job. It is not necessary to assign a cost for each possible resource, only those which the site wishes to be considered in synchronous job scheduling. Format: "resources_cost.resource_name=value[,...]"; default value: none, cost of resource is not computed.resources_defaultThe list of default resource values that are set as limits for a job executing on this server when the job does not specify a limit, and there is no queue default. Format: "resources_default.resource_name=value[,...]"; default value: no limit.resources_maxThe maximum amount of each resource which can be requested by a single job executing on this server if there is not a resources_max valued defined for the queue in which the job resides. Format: "resources_max.resource_name=value[,...]"; default value: infinite usage.sched_versionA string specifying the scheduler version. Schedulers should check this string whenstarting and not become active if the wrong string is found. This is ignored by pbs_server. scheduler_iterationThe time, in seconds, between iterations of attempts by the batch server to schedule jobs.On each iteration, the server examines the available resources and runnable jobs to see ifa job can be initiated. This examination also occurs whenever a running batch jobterminates or a new job is placed in the queued state in an execution queue. Format: integer seconds; default value: 10 minutes, set by {PBS_SCHEDULE_CYCLE}in server_limits.h.schedulingControls if the server will request job scheduling by the PBS job scheduler. If true, the scheduler will be called as required; if false, the scheduler will not be called and no job will be placed into execution unless the server is directed to do so by an operator or administrator. Setting or resetting this attribute to true results in an immediate call to the scheduler. For more information, see the section Scheduler - Server Interaction in the PBS Administrator Guide. Format: boolean (see acl_host_enable); default value: value of -a option when server is invoked, if -a is not specified, the value is recovered from the prior server run. If it has never been set, the value is "false".server_nameThe name of the server which is the same as the host name. If the hostname resolves to an external IP address, then set this to a name that resolves to the internal IP.submit_hostsA list of hostnames allowed to submit jobs to this batch server regardless of ruserok(). system_costAn arbitrary value factored into the resource cost of any job managed by this server for the purpose of selecting which member of synchronous set is released first, see resources_cost and section 3.2.2, Synchronize Job Starts. [default value: none, cost of resource is not computed]tcp_timeoutSpecifies the pbs_server to pbs_mom TCP socket timeout in seconds. Format: integer;default value: 6.The following attributes are read-only, they are maintained by the server and cannot be changed by a client.pbs_versionThe release version number of the server.resources_assignedThe total amount of certain types of resources allocated to running jobs.server_stateThe current state of the server:ActiveThe server is running and will invoke the job scheduler as required to schedule jobs for execution.IdleThe server is running but will not invoke the job scheduler.SchedulingThe server is running and there is an outstanding request to the job scheduler.TerminatingThe server is terminating. No additional jobs will be scheduled.Terminating, DelayedThe server is terminating in delayed mode. The server will not run any new jobs and will shutdown when the last currently executing job completes.state_countThe total number of jobs managed by the server currently in each state.total_jobsThe total number of jobs currently managed by the server.See Alsothe PBS ERS, qmgr(1B), pbs_resources(7B)。
电脑常见故障解决方法(3)
电脑常见故障解决方法(3)电脑常见故障解决方法terminate=reset displayendterminate=reset displayendterminate=user从记录上看,好像关机失败和显卡有一些关系,于是我安装了驱动光盘上的tnt2新版的驱动程序,故障依然存在。
又安装了最新的directx8.1,仍然没有解决问题。
最后在一次运行directx诊断工具“dxdiag”(该程序在c:\\program files\\directx\\setup目录中)后,在“显示”页面中提示“文件nvdisp.drv未经数字签名……”看来我之前所安装的tnt2驱动程序没有通过微软认证,于是我又上网下载了tnt2的nvidia_whql(即通过微软认证)最新驱动28.32 whql版forwindows 9x,安装之后重新启动,再次运行“dxdiag”程序,在“显示”页面中提示“没有找到任何问题”,此时运行各种3d游戏后均可顺利关机。
经过多次试验,发现一般关机失败,只要不是硬件本身的故障,都可以检查bootlog.txt文件查找原因。
下面所列出的记录都可能造成电脑关机失败,大家可根据自己电脑的bootlog.txt所显示的情况找出原因:terminate=query drivers内存管理程序有问题terminate=unload network network与config.sys中的实模式网络驱动程序冲突terminate=reset display显卡设置或驱动程序有问题terminate=rit声卡或某些旧的鼠标驱动程序存在与计时器有关的问题terminate=win32某些32位程序锁定了线程大家可以根据自己电脑的情况,通过对比以上几点原因,查找并解决电脑的关机故障。
三、软件难退出有时候关机失败并不是电脑系统本身的原因,而是因为关机时某些程序无法正常退出。
很多朋友在关机之前并不将所有正在运行的程序或软件全部关闭,而是让windows关机时自动关闭它们。
PBS管理系统
PBS管理系统1、引言本文档旨在提供关于PBS(Project-Based System,项目管理系统)的详细说明和使用指南。
PBS是一款用于项目管理的系统,通过集成各种功能和工具,提供项目计划、资源分配、进度跟踪、任务分配等管理功能。
2、系统概述2.1 系统目的PBS管理系统的目的是提供一个统一的平台,以便项目经理和团队成员能够更好地协作、交流,实现项目的高效管理。
2.2 系统特性- 项目计划管理:包括项目的定义、范围、目标、阶段和任务的制定以及任务间依赖关系的建立。
- 资源管理:管理项目所需的人力、物力和资金等资源,包括资源的分配、调度和优化。
- 进度跟踪:实时监控项目的进展情况,及时发现和解决潜在问题,确保项目按时完成。
- 任务分配与协作:将项目任务分配给团队成员,并提供协作工具,方便成员之间的沟通和合作。
- 报告与分析:各类报告,帮助管理层进行决策分析和项目评估。
3、系统功能详细说明3.1 用户管理- 用户注册与登录:用户通过注册账号并登录系统,才能使用系统的功能。
- 用户权限管理:根据用户角色的不同,赋予不同的系统访问权限和操作权限。
3.2 项目管理- 项目创建:项目经理根据项目需求,创建项目并设置项目基本信息。
- 项目计划制定:制定项目计划,包括项目范围、里程碑和任务的设定。
- 项目进度跟踪:实时跟踪项目进展情况,记录实际完成情况并与计划进行比较。
- 项目风险管理:识别和管理项目的潜在风险,采取相应的措施进行风险防范和应对。
3.3 资源管理- 资源录入:录入项目所需的人员信息、设备信息、材料信息等。
- 资源分配:根据项目需求,对资源进行合理分配和调度,确保资源的最优利用。
- 资源报表:资源使用情况报表,用于资源的监控和分析。
3.4 任务管理- 任务分配:项目经理将项目任务分配给对应的团队成员,并设定任务的优先级和截止日期。
- 任务进度追踪:团队成员实时更新任务的完成情况,与项目计划进行对比。
集群资源管理器Torque安装配置
集群资源管理器Torque安装配置集群资源管理器T orque安装配置Torque有三个重要的可执行文件,运行在主节点上的pbs_server 和pbs_sched(对于比较简单的情况,这里使用这个Torque自带的调度器)及运行在计算节点上的pbs_mom,提交任务前要先启动这三个服务。
为方便阅读,命令及在需要编辑文件的内容以兰色字体显示。
如果没有说明路径,操作(如cp)是在/root/software/torque-2.5.4进行的。
1.编译安装1.1 解压源文件包假设解压的文件放在/root/software# cd /root/software# tar -xvf torque-2.5.4.tar.gz1.2 编译配置# cd torque-2.5.4#./configure --enable-docs --with-scp --enable-syslog --with-default-server=xxx(headnode-name)其中,默认情况下,TORQUE将可执行文件安装在/usr/local/bin 和/usr/local/sbin下。
其余的配置文件将安装在/var/spool/torque下(其实直接./configure应该也可以)。
1.3 编译安装# make# make install2.参数设置2.1在Server端设置队列管理员在torque的安装源文件根目录中,执行#./torque.setup root上面的命令以root作为torque的管理员账号创建作业队列,也可以指定其它的用户作管理员。
如果此处添加失败,有可能是机器用户名不对,执行这步之前要确认用户名,如果出现BS_Server: LOG_ERROR::pbsd_main, unable to determine local server hostname - gethostbyname(pbsmaster.localdomain) failed, h_errno=1解决方法:add a line in /etc/host:192.168.1.101 pbsmaster pbsmaster.localdomain2.2 Server端资源管理配置(指定计算节点)为了让pbs_server与每个计算节点进行通信,它需要知道要和那些机器联络,集群中的每个计算节点都必须在nodes 文件中指定,一行一个节点,对于只有一个节点的情况只用增加一行就行。
PBS使用说明
PBS使用说明PBS是公开源代码的作业管理系统,在此环境下运行,用户不需要指定程序在哪些节点上运行,程序所需的硬件资源由PBS管理和分配。
PBS(Portable Batch System)是由NASA开发的灵活的批处理系统。
它被用于集群系统、超级计算机和大规模并行系统。
PBS主要有如下特征:易用性:为所有的资源提供统一的接口,易于配置以满足不同系统的需求,灵活的作业调度器允许不同系统采用自己的调度策略。
移植性:符合POSIX 1003.2标准,可以用于shell和批处理等各种环境。
适配性:可以适配与各种管理策略,并提供可扩展的认证和安全模型。
支持广域网上的负载的动态分发和建立在多个物理位置不同的实体上的虚拟组织。
灵活性:支持交互和批处理作业。
OpenPBS( /)是PBS的Open Source的实现。
商业版本的PBS可以参照:/。
1、PBS命令PBS提供4条命令用于作业管理。
(1)qsub 命令—用于提交作业脚本命令格式:qsub [-a date_time] [-c interval] [-C directive_prefix][-e path] [-I] [-j join] [-k keep] [-l resource_list] [-m mail_options][-M user_list][-N name] [-o path] [-p priority] [-q destination] [-r c][-S path_list] [-u user_list][-v variable_list] [-V][-W additional_attributes] [-z][script]参数说明:因为所采用的选项一般放在pbs脚本中提交,所以具体见PBS脚本选项。
例:# qsub aaa.pbs 提交某作业,系统将产生一个作业号(2)qstat 命令—用于查询作业状态信息命令格式:qatat [-f][-a][-i] [-n][-s] [-R] [-Q][-q][-B][-u]参数说明:-f jobid 列出指定作业的信息-a 列出系统所有作业-i 列出不在运行的作业-n 列出分配给此作业的结点-s 列出队列管理员与scheduler所提供的建议-R 列出磁盘预留信息-Q 操作符是destination id,指明请求的是队列状态-q 列出队列状态,并以alternative形式显示-au userid 列出指定用户的所有作业-B 列出PBS Server信息-r 列出所有正在运行的作业-Qf queue 列出指定队列的信息-u 若操作符为作业号,则列出其状态。
16、SGE作业调度系统的简介
16、SGE作业调度系统的简介SGE作业调度系统的简介⼀、常见的⼏种作业调度系统Condor是⼀个资源管理和作业调度系统,是来⾃Wisconsin-Madison⼤学的研究项⽬。
充分利⽤⼯作站的空闲时间是Condor的最显著特征。
Condor管理的机群由⽹络中的⼯作站组成,⼯作站可以⾃愿加⼊或退出。
Condor监测⽹络中所有⼯作站的状态,⼀旦某台计算机被认为空闲,便把它纳⼊到资源池中。
在资源池中的⼯作站被⽤来执⾏作业。
Sun⽹格引擎(Sun Grid ,SGE)是⼀种来⾃于SUN Microsystem的分布式资源管理和调度系统,它⽤来在基于UNIX的计算环境中优化软件和硬件资源的使⽤。
SGE能⽤于查找资源池内的闲置资源并利⽤这些资源;它同样⽤于通常的⼀些事务中,例如管理和调度作业到可⽤资源中。
负载共享设施(Load Sharing Facility,LSF)是由加拿⼤平台计算公司研制与开发的,由Toronto⼤学开发的Utopia系统发展⽽来。
在使⽤范围上,LSF不仅⽤于科学计算,也⽤于企业的事务处理。
功能上,除了⼀般的作业管理特性外,它还在负载平衡、系统容错、检查点操作、进程迁移等⽅⾯作了很好的努⼒,并⼒图使之实⽤化。
便携式批处理系统(Portable Batch System,PBS)是⼀个资源管理和调度系统,它接受批处理作业(具有控制属性的shell脚本),保留和保护作业直到它开始运⾏。
因为⼀个批处理作业是⼀个⽆需⽤户⼲预的,在计算机系统后台运⾏的程序,在批处理作业运⾏过程中,⽤户⽆法实时地得到作业运⾏结果,所以PBS只能在作业执⾏后,将作业结果返回给提交者。
⽬前,PBS包含开源免费的OpenPBS、商业付费的PBS Pro、Torque三种分⽀。
⼆、SGE 常见指令1. qsub 提交任务-cwd#从当前⼯作路径运⾏作业-wd working_dir#定义⼯作⽬录-o path定义标准输出⽂件路径、⽂件名-e path#定义标准错误输出⽂件路径、⽂件名-j y[es]|n[o]#定义作业的标准错误输出是否写⼊到输出⽂件中-now y[es]|n[o]#⽴即执⾏作业-a date_time#作业开始运⾏时间-b y[es]|n[o]#指定运⾏程序是⼆进制⽂件还是脚本⽂件,默认n-m b|e|a|s|n#定义邮件发送规则。
pbs系统使用文档
作业管理系统(PBS+MAUI)使用说明用户篇12一、 本文档符号说明1、 命令、代码和超链接采用斜体五号字表示2、二、PBS 脚本编辑pbs 系统通过脚本方式提交作业,因此,在发起作业之前,需要编写pbs 系统能够识别的脚本。
1、 作业脚本: 1.1 串行作业:(test.pb)#!/bin/sh #PBS -N test//pbs 任务名#PBS -l nodes=1:ppn=1//指定一个节点与一个处理器核心进行计算echo "This job is "$PBS_JOBID@$PBS_QUEUE cd $PBS_O_WORKDIR touch test.tmp//修改为执行文件1.2 并行作业:(test2.pb)#!/bin/sh #PBS -N test2//pbs 任务名#PBS -l nodes=5:ppn=4//指定5个节点,每节点4个处理器核心进行计算#PBS -q@gnode21 cd $PBS_O_WORKDIR/opt/mpich1.2.7/bin/mpirun -np 20 -machinefile $PBS_NODEFILE ./cpi //修改为可执行并行文件1.3 单进程多线程作业:#!/bin/sh #PBS -N test3//pbs 任务名#PBS -l nodes=1:ppn=4//划分1个节点,每节点4个处理器核心的计算资源cd $PBS_O_WORKDIR3./XXX //修改为可执行文件1.4 多进程多线程作业:#!/bin/sh #PBS -N test3//pbs 任务名#PBS -l nodes=5:ppn=1//划分5个节点,每节点1个处理器核心的计算资源,让pbs 自动扩充计算需要的线程#PBS -q@gnode21 cd $PBS_O_WORKDIR/opt/mpich1.2.7/bin/mpirun -np 20 -machinefile $PBS_NODEFILE ./XXX //修改为可执行并行文件2、 pbs 命令: 2.1 发作业$ qsub test.pb2.2 查看作业状态$ showq2.3 查看节点状态$ pbsnodes -a2.4 删除作业$ canceljob ID3、 其他特殊需求3.1 当需要对作业运行所在节点进行预处理时,如需要在运行作业前source 某个配置文件,可采用在pbs 脚本中添加命令的方式实现,如下(红色为添加部分):#PBS -N test#PBS -l nodes=3:ppn=1echo "This job is "$PBS_JOBID@$PBS_QUEUE for i in $(uniq $PBS_NODEFILE) dorsh $i source XXXX4donempirun …… //执行实际任务!4、 三、其他需要注意的地方1、 由于mpich 编译的多线程程序可能存在导致pbs 僵尸的问题,因此建议大家采用openmpi 编译多线程程序。
OpenPBS-Torque安装手册
OpenPBS/Torque安装手册原文出处:/blog/?p=65WebHPC官方网站:/PBS是由NAS(National Academy of Sciences)开发的面向批作业调度以及系统资源管理的软件包。
它主要用于管理使用UNIX或Linux的同构或异构的机群系统。
PBS是一个商用软件,拥有完善的解决方案和技术支持,但是价格昂贵。
OpenPBS是对PBS系统的开源实现,遵循开源软件的相关约定,所以任何个人和组织都可以自由获得其源代码并修改之。
OpenPBS目前的最新版本为2.3.16。
本文介绍的对象即为OpenPBS 2.3.16版,为简洁起见,本文下面不再另行说明版本,默认是2.3.16版。
请注意,在使用OpenPBS 2.3.16提交作业时,提交者用户名长度不能大于15个字符。
一、 OpenPBS的结构OpenPBS主要由三个主要部件组成:PBS服务守护进程: pbs_server 负责接收作业提交,位于服务节点PBS调度守护进程: pbs_sched 负责调度作业,位于服务节点PBS MOM守护进程: pbs_mom 负责监控本机并执行作业,位于所有计算节点二、在单个节点上安装OpenPBS本节介绍的是通过编译源代码的方式安装OpenPBS。
由于整个OpenPBS都被安装在一台计算机上,所以上述pbs_server、pbs_mom 和pbs_sched都会被安装在一起。
具体步骤如下:1. 安装前提:a)机器上安装有合适版本的Linux(包括Redhat9、AS3、AS4等)、gcc编译器以及其他所需的包;b)安装者能以root帐户登录计算机;c)下载合适的源码形式安装包,如pbs.tar.gz2. 以root帐号登录计算机3. 用tar zxf pbs.tar.gz命令释放安装包到指定位置,譬如:/opt/OpenPBS_2_3_16/4. 进入解压得到的目录,执行命令:a)./configure –disable-gui –set-server-home={YOUR_PBS_HOME}说明:有的环境下可能是—with-server-home,具体可以通过./configure –-help查看b) ./configure –enable-docs –disable-gui其中:–disable-gui:说明不安装GUI组件,因为该组件不常用,且对linux的tcl 等库的版本颇为挑剔,往往使安装进程无法继续–set-server-home:指定OpenPBS的工作目录,默认是 /usr/spool/PBS/5. 执行make6. 执行make install,这样就可以把OpenPBS安装到指定工作目录中7. 下面设置OpenPBS(假设工作目录为/usr/spool/PBS/)a)设置服务器名:编辑/usr/spool/PBS/server_name文件,填写本机机器名(如cngrid217)b)设置机群所有机器名:编辑/usr/spool/PBS/server_priv/nodes文件,填写本机机器名c)设置MOM进程配置文件:编辑 /usr/spool/PBS/mom_priv/config文件,写入如下内容$logevent 0×1ff$clienthost server_host其中server_host是本机的机器名,譬如mydemocluster8. 启动OpenPBSa)启动mom进程:(任意路径下)执行命令 pbs_momb)启动调度器进程:执行命令 pbs_schedc)启动OpenPBS服务器进程,创建pbs数据库执行命令 pbs_server -t create其参数 -t create 只在首次启动server进程时才需要9. 创建并设置作业队列:a) 用qmgr创建队列normalqmgr -c “c q normal”其中:-c 表示其后是命令c 表示创建q 表示队列b) 设定队列的类型为可执行队列qmgr -c “s q normal queue_type=Execution”其中s表示设置。
Torque在Linux集群上的安装配置
Torque在Linux集群上的安装配置服务器的基本状况:一个2T硬盘的前端存储节点,名称为tccl_front;9台8核的计算节点,名称分别为tccl01-tccl09。
操作系统为CentOS 5.3 x86_64版本的Linux系统。
NIS服务已经配置好,存储节点的磁盘用NFS挂载在每个计算节点上作为共享磁盘。
所有的应用软件都安装在此共享磁盘上。
1.ssh免密码登录.对每个用户都要设置。
2.下载Torque,解压缩,编译。
目前,torque 2.3是稳定版本,2.4是beta版本。
为了稳定,我下载的是2.3.9版本。
下载地址:/doc/5b17756210.html,/downloads/t orque在PBS服务器节点上:tar xvfz torque-2.3.9.tar.gzconfigure需要加参数./configure --enable-docs --with-scp --enable-syslogmakemake packagesmake install将torque-package-mom-linux-i686.sh,torque-package-clients-linux-i686.sh安装到计算节点上。
将这两个文件拷贝到计算节点上(或者是共享磁盘上),登录进计算节点,运行:./torque-package-mom-linux-i686.sh --install./torque-package-clients-linux-i686.sh --install可以使用dsh之类的工具来辅助。
或者手工写一个脚本来完成这些工作。
3.配置pbs_mom为服务在torque源码包contrib目录中有一个文件cp contrib/init.d/pbs_mom /etc/init.d/pbs_momchkconfig --add pbs_mom在所有的机器(pbs服务器和计算节点)上都需要如此设置。
pbs torque 安装过程
单机安装torque PBS过程(广石化应用物理系XU)去torque官网下载安装包,以最新的6.1.1为例。
使用系统为最新的centos7。
首先设置hostname。
Vi/etc/hosts修改成如下:(我的hostname是wuzhou509)127.0.0.1wuzhou509wuzhou509localhost4localhost4.localdomain4::1localhost localhost.localdomain localhost6localhost6.localdomain6 Vi/etc/hostname修改成wuzhou509然后,重新登录。
输入命令hostname,看是否修改成功。
解压torque./configure(如果要改目录,在这里加参数)MakeMake install如何提示缺少/etc/lib/ld那是因为有些依赖包没装。
libxml2-devel package(package name may vary)openssl-devel package(package name may vary)Tcl/Tk version8or later if you plan to build the GUI portion of TORQUE or use a Tcl based schedulerIf your configuration uses cpusets,you must install libhwloc;thecorresponding hwloc-devel package is also required.See4.6Linux Cpuset Support.用yum install libtool openssl-devel libxml2-devel boost-devel gcc gcc-c++安装上面的东西。
安装完成后。
设置。
Red Hat6-based systems[root]#cp contrib/init.d/trqauthd/etc/init.d/[root]#chkconfig--add trqauthd[root]#echo/usr/local/lib>/etc/ld.so.conf.d/torque.conf[root]#ldconfig[root]#service trqauthd startSUSE11-based systems[root]#cp contrib/init.d/suse.trqauthd/etc/init.d/trqauthd[root]#chkconfig--add trqauthd[root]#echo/usr/local/lib>/etc/ld.so.conf.d/torque.conf[root]#ldconfig[root]#service trqauthd startRed Hat7-based and SUSE12-based systems[root]#cp contrib/systemd/trqauthd.service/usr/lib/systemd/system/[root]#systemctl enable trqauthd.service[root]#echo/usr/local/lib>/etc/ld.so.conf.d/torque.conf[root]#ldconfig[root]#systemctl start trqauthd.service接下来继续:1.Verify that the/var/spool/torque/server_name file exists and contains thecorrect name of the server.[root]#echo<pbs_server's_hostname>>/var/spool/torque/server_name2.By default,TORQUE installs all binary filesto/usr/local/bin and/usr/local/sbin.Make sure the path environmentvariable includes these directories for both the installation user and the root user.[root]#export PATH=/usr/local/bin/:/usr/local/sbin/:$PATH3.Initialize serverdb by executing the torque.setup script.[root]#./torque.setup root这一步如果出错,检查hostname是否按照上面修改hosts新建/var/spool/torque/server_priv/nodes内容为:wuzhou509np=32all新建/var/spool/torque/mom_priv/config内容为:$pbsserver wuzhou509#hostname running pbs server$logevent225#bitmap of which events to log修改walltimeqmgr-c"set queue batch resources_default.walltime=900:00:00"然后qterm填加自动启动:*If RHEL distribution,do the following*[root]#cp contrib/init.d/pbs_server contrib/init.d/pbs_mom contrib/init.d/pbs_sched /etc/init.d[root]#chkconfig--add pbs_server[root]#chkconfig--add pbs_sched[root]#chkconfig--add pbs_mom[root]#service pbs_server restart[root]#service pbs_sched restart[root]#service pbs_mom start完成。
作业调度系统PBS(Torque)的设置
作业调度系统PBS(Torque)的设置1、修改/var/spool/torque/server_priv/⽬录下的nodes⽂件##Node1 np=16 gpus=4Node2 np=16 gpus=4...其中Node1为计算节点名字,np为逻辑核数,gpus为显卡数该⽂件给出了计算集群的最⼤可⽤资源2、重新启动pbs##\#service pbs_mon restart\#service pbs_server restart\#service pbs_sched restart注意要按照顺序重启服务3、 qmgr 是Torque⽤户对队列进⾏管理的交互界⾯##在root账户下进⼊qmgr\#qmgrQmgr:list queue QueueName //查看队列属性Queue QueueNamequeue_type = Executionmax_user_queuable = 100total_jobs = 0state_count = Transit:0 Queued:4 Held:0 Waiting:0 Running:1 Exiting:0 Complete:0resources_max.ncpus = 12resources_default.ncpus = 12resources_default.nodes = 1resources_default.walltime = 01:00:00mtime = Tue Jan 30 16:14:38 2018resources_assigned.ncpus = 4resources_assigned.nodect = 1max_user_run = 1enabled = Truestarted = True如要启⽤队列Qmgr:set queue QueueName enabled=True相应的设置项在中给出max_user_queuable :队列中⼀个⽤户能提交的最⼤作业数max_user_run :队列中⼀个⽤户同时运⾏的作业数resources_max.ncpus :最⼤可⽤逻辑核数total_jobs :当前提交的作业数如果要求⼀次执⾏⼀个任务,该任务占⽤12个核,其余任务需要排队,则设置max_user_run=1.然后在作业提交脚本.pbs中 -np 12qmgr不需要重新启动pbs服务4、如何将pbs_mom, pbs_server 和 pbs_sched ,并添加为系统服务,设置为开机启动##cd /usr/local/src/torque-2.5.12/contrib/init.d/cp pbs_mom pbs_server pbs_sched /etc/init.d/chkconfig --add pbs_momchkconfig --add pbs_serverchkconfig --add pbs_sched。
torque使用指南
torque使用指南tip1:bydefault,jobsubmissionisallowedonlyonthetorqueserverhost(hostonwhichpbs_ serverisrunning).enablementofjobsubmissionfromotherhostsisdocumentedinconfigur ingjobsubmithosts.masternode:node3submitajob:qsub查询作业状态:qstat/qstatcf查询节点状态:pbsnodesca第一步:安装yuminstalltorque*安装之后的路径:/var/torque第二步:布局布局掌控节点:1.执行/usr/share/doc/torque-2.5.7/torque.setup,将本节点配置为管理节点。
命令:./torque.setup(选定一个非root用户名)qmgr-c'ps'//查阅布局信息2.具体内容选定排序节点在目录torque_home/server_priv/nodes建立文件nodes,具体指定集群中的计算节点。
简单示例如下:#nodes001and003-005areclusternodes#node001np=2cluster01racknumber22##node002willbereplacedsoonnode002:tswaitingtobereplaced#node002willbereplaceds oon#node003np=4cluster01racknumber24node004cluster01racknumber25node005np=2cluster01racknumber26ram16gbnode006node007np=2node008:tsnp=4布局排序节点:在计算节点的torque_home/mom_priv/config文件中修改$pbsserverheadnode#note:hostnamerunningpbs_server$logevent255#bitmapofwhicheve ntstologpbsserver为你的集群中的管理节点的hostname.3.重启节点排序节点:pbs_mom控制节点:>qterm-tquick>pbs_server注意事项:1.在torque中在继续执行mpi程序时。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PBS 管理系统(一)作业提交系统Torque 个人安装总结(PBS)PBS 是功能最为齐全,历史最悠久,支持最广泛的本地集群调度器之一。
PBS 的目前包括openPBS,PBS Pro 和Torque 三个主要分支。
其中OpenPBS 是最早的PBS 系统,目前已经没有太多后续开发,PBS pro 是PBS 的商业版本,功能最为丰富。
Torque 是Clustering 公司接过了OpenPBS,并给与后续支持的一个开源版本。
下面是本人安装torque 的过程。
一、Torque 安装在master(管理结点上)1、解压安装包[root@master tmp]# tar zxvf torque-2.3.0.tar.gz2、进入到解压后的文件夹./configure --with-default-server=mastermakemake install3、(1)[*********************.0]#./torque.setup<user><user>必须是个普通用户(2)[*********************.0]#makepackages把产生的 tpackages , torque-package-clients-linux-x86-64.sh,torque-package-mom-linux-x86-64.sh 拷贝到所有节点。
(3)[root@mastertorque-2.3.0]# ./torque-package-clients-linux-x86_64.sh --install[*********************.0]#./torque-package-mom-linux-x86_64.sh --install(4)编辑/var/spool/torque/server_priv/nodes (需要自己建立)加入如下内容master np=4node01 np=4........node09 np=4(5)启动pbs_server,pbs_sched,pbs_mom,并把其写到/etc/rc.local 里使其能开机自启动。
(6)创建队列[root@master ~]# qmgrcreate queue studentsset queue students queue_type = Executionset queue students Priority = 40set queue students resources_max.cput = 96:00:00set queue students resources_min.cput = 00:00:01set queue students resources_default.cput = 96:00:00set queue students enabled = Trueset queue students started = True4、在node0x (x=1-9,计算结点上)[root@node0xtorque-2.3.0]# ./torque-package-clients-linux-x86_64.sh --install[*********************.0]#./torque-package-mom-linux-x86_64.sh --install然后启动pbs_mom ,把pbs_mom 写入/etc/rc.local二、Torque PBS 使用1、创建用户在master 的root 下useradd testpasswd test输入test 密码到/var/yp 下make 一下2、配置普通用户的sshsu testcdssh-keygen -t dsacd .sshcat id_pub.dsa >>authorized_keyschmod 600 authorized_keys3、编写作业脚本[test1@master t]vi pbsjob#!/bin/tcsh#PBS -o /home/test1/pbstest/t/output 标准输出文件#PBS -e /home/test1/pbstest/t/error 错误输出文件#PBS -l nodes=5:ppn=4 规定使用的节点数以及每个节点能跑多少核#PBS –q students 把任务提交到students 队列中cd $PBS_O_WORKDIR 到工作目录下(此为PBS 提供的环境变量)mpirun –machine $PBS_NODEFILE -np 20 ./vasp4、启动mpdmpdboot -n 10 -f mfamfa 内容:master:4node01:4….node09:45、提交,查询,删除作业提交作业:qsub pbsjob 作业提交后会有一个作业号 [test1@master pbstest]$ qsubpbsjob48.master查询作业:qstat[test1@master pbstest]$ qstatJob id Name User Time Use S Queue------------------------- ---------------- ----------------------- - -------------------------------48.master pbstest test1 00:00:00 R students删除作业:qdel 作业号[test1@master pbstest]$ qdel 48链接/danganxi521/blog/item/2b23c03db6cea1e93c6d975f.ht ml/cmtid/b4f2450700f2e5c77b89478f(二)PBS 脚本使用qsub -N Relax -l nodes=1:ppn=8 pbs#!/bin/shVASP="/home/user15/soft/mpi/bin/mpirun -machinefile $PBS_NODEFILE -np 8 avasp < /dev/null "i=36 times=1000while((i<=times))docp RStru_$i POSCARrm WAVECAR CHG*./produKPTS.x$VASPcp CONTCAR POSCARrm WAVECAR CHG*./produKPTS.x$VASPcp CONTCAR POSCARrm WAVECAR CHG*./produKPTS.x$VASPcp CONTCAR pos.$icp OUTCAR out.$ilet i=i+1donecd /temp/user15/RST1000./relax.sh >& log(三)pbs常用命令和选项一、基本选项pbs 是Protable Batch System 的缩写,是一个任务管理系统。
当多个用户使用同一个计算资源时,每个用户用PBS 脚本提交自己的任务,由PBS 对这些任务进行管理和资源的分配。
下面是一个简单的PBS 脚本:#PBS -l nodes=20#PBS -N snaphu#PBS -j oe#PBS -l walltime=24:00:00#PBS -l cput=1:00:00#PBS -q dquecd $PBS_O_WORKDIRcat $PBS_NODEFILE $PBS_NODEFILE> NODEFILEmpirun -hostfile NODEFILE -np `cat NODEFILE |wc -l` ./mpiTest将这个脚本保存成submit然后qsub submit 就将这个mpiTest 的任务提交给了系统。
脚本中#PBS 为脚本选项,用于设置一些参数。
#PBS -l 表示资源列表,用于设定特定任务所需的一些参数。
这里的NODES 表示并行环境下可以使用的节点数,而walltime 表示任务最大时限,而cput 表示cpu 时间的最大时限,运行时间和cpu 使用时间超过对应的时限,任务就会以超时退出。
这三个参数不是PBS 脚本参数,而是并行环境所需的参数。
#PBS -N 表示任务名称#PBS -j 表示系统输出,如果是oe,则标准错误输出(stderr)和标准输出(stdout)合并为stdout,如果是eo,则合并为stderr,如果没有设定或设定为n,则stderr 和stdout 分开。
#PBS -q 表示当前任务选用的队列。
在并行环境下,一个系统中往往有多个队列,任务提交后,将在所选的队列中排除等候。
系统中有哪些队列可以用qstat -q 查看。
二、简单命令任务提交后,需要查看任务信息和环境信息,有如下常用命令。
qstat 查看本用户提交的任务qstat -n 同上,输出内容稍有不同qstat -q 查看系统中所有的队列,以及每个队列中任务的运行和等候情况。
showq 查看系统中所有运行的任务。
qdel id 删除JOBNAME 为id 的任务。
该任务如果在等待,则可以有这个命令删除,如果已经开始运行,则无法删除。
三、参数传递qsub submit -l nodes=4 -v x=1,y=2其中,-l nodes=4 本来就是一个#PBS 选项,既可以放在submit 文件中,又可以放到命令行上。
-v x=1,y=2 为一个变量列表,和shell 命令一样,在submit 文件中可以用$x,$y 来调用这两值链接/pkuwwt/blog/item/d6e094b1b910df5c0923022f.html (四)PBS 命令与使用PBS(Portable Batch System)是由NASA 开发的灵活的批处理系统。
它被用于集群系统、超级计算机和大规模并行系统。
PBS 主要有如下特征:• 易用性:为所有的资源提供统一的接口,易于配置以满足不同系统的需求,灵活的作业调度器允许不同系统采用自己的调度策略。
• 移植性:符合POSIX 1003.2 标准,可以用于shell 和批处理等各种环境。
• 适配性:可以适配与各种管理策略,并提供可扩展的认证和安全模型。
支持广域网上的负载的动态分发和建立在多个物理位置不同的实体上的虚拟组织。
• 灵活性:支持交互和批处理作业。
OpenPBS( /)是PBS 的Open Source 的实现。
商业版本的PBS 可以参照:/。
1、PBS 命令PBS 提供4 条命令用于作业管理。
(1) qsub 命令—用于提交作业脚本命令格式:qsub [-a date_time] [-c interval] [-C directive_prefix][-e path] [-I] [-j join] [-k keep] [-l resource_list] [-mmail_options][-M user_list][-N name] [-o path] [-p priority] [-q destination] [-r c][-S path_list] [-u user_list][-v variable_list] [-V][-W additional_attributes] [-z][script]参数说明:因为所采用的选项一般放在pbs 脚本中提交,所以具体见PBS 脚本选项。