qstat

package
v0.0.0-...-80e8b16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 20, 2021 License: GPL-3.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Pbs_attrib2attribl

func Pbs_attrib2attribl(attribs []utils.Attrib) *C.struct_attrl

func Pbs_freeattribl

func Pbs_freeattribl(attrl *C.struct_attrl)

Types

type Qstat

type Qstat struct {
	Server  string         `json:"server"`
	Handle  int            `json:"handle"`
	Attribs []utils.Attrib `json:"attribs"`
	Extend  string         `json:"extend"`
	ID      string         `json:"id"`

	// server state information.
	ServerState []QstatServerInfo
	// queue state information.
	QueueState []QstatQueueInfo
	// node state information.
	NodeState []QstatNodeInfo
	// jobs state information.
	JobsState []QstatJobsInfo
}

定义PBS结构体

func NewQstat

func NewQstat(server string) (qs *Qstat, err error)

新建一个Qstat实例

func (*Qstat) ConnectPBS

func (qs *Qstat) ConnectPBS() error

创建一个新的连接

func (*Qstat) DisconnectPBS

func (qs *Qstat) DisconnectPBS() error

断开连接

func (*Qstat) PbsJobsState

func (qs *Qstat) PbsJobsState() error

返回所有作业信息,如果Extend设为x,则返回所有历史信息。

func (*Qstat) PbsNodeState

func (qs *Qstat) PbsNodeState() error

查询指定节点状态

func (*Qstat) PbsQueueState

func (qs *Qstat) PbsQueueState() error

查询指定队列信息

func (*Qstat) PbsServerState

func (qs *Qstat) PbsServerState() error

查询服务信息

func (*Qstat) Pbs_statjob

func (qs *Qstat) Pbs_statjob() ([]utils.BatchStatus, error)

查询指定作业的信息

func (*Qstat) SetAttribs

func (qs *Qstat) SetAttribs(attribs []utils.Attrib)

设定属性列表

func (*Qstat) SetExtend

func (qs *Qstat) SetExtend(extend string)

设定扩展信息列表.

func (*Qstat) SetHandle

func (qs *Qstat) SetHandle(handle int)

设定handle号,>= 0

func (*Qstat) SetID

func (qs *Qstat) SetID(id string)

设定Id值

func (*Qstat) SetServerName

func (qs *Qstat) SetServerName(server string)

设定服务名称

type QstatJobsInfo

type QstatJobsInfo struct {
	JobName                 string  `json:"job_name" db:"job_name"`
	JobOwner                string  `json:"job_owner" db:"job_owner"`
	ResourcesUsedCpuPercent float64 `json:"resources_used_cpupercent" db:"resources_used_cpupercent"`
	ResourcesUsedCput       int64   `json:"resources_used_cput" db:"resources_used_cput"`
	ResourcesUsedMem        int64   `json:"resources_used_mem" db:"resources_used_mem"`
	ResourcesUsedNcpus      int64   `json:"resources_used_ncpus" db:"resources_used_ncpus"`
	ResourcesUsedVmem       int64   `json:"resources_used_vmem" db:"resources_used_vmem"`
	ResourcesUsedWallTime   int64   `json:"resources_used_walltime" db:"resources_used_walltime"`
	JobState                string  `json:"job_state" db:"job_state"`
	Queue                   string  `json:"queue" db:"queue"`
	Server                  string  `json:"server" db:"server"`
	CheckPoint              string  `json:"checkpoint" db:"checkpoint"`
	Ctime                   int64   `json:"ctime" db:"ctime"`
	ErrorPath               string  `json:"error_path" db:"error_path"`
	ExecHost                string  `json:"exec_host" db:"exec_host"`
	ExecVnode               string  `json:"exec_vnode" db:"exec_vnode"`
	HoldType                string  `json:"hold_type" db:"hold_type"`
	JoinPath                string  `json:"join_path" db:"join_path"`
	KeepFiles               string  `json:"keep_files" db:"keep_files"`
	MailPoints              string  `json:"mail_points" db:"mail_points"`
	Mtime                   int64   `json:"mtime" db:"mtime"`
	OutputPath              string  `json:"output_path" db:"output_path"`
	Priority                int64   `json:"priorty" db:"priorty"`
	Qtime                   int64   `json:"qtime" db:"qtime"`
	Rerunable               int64   `json:"rerunable" db:"rerunable"`
	ResourceListNcpus       int64   `json:"resource_list_ncpus" db:"resource_list_ncpus"`
	ResourceListNodect      int64   `json:"resource_list_nodect" db:"resource_list_nodect"`
	ResourceListPlace       string  `json:"resource_list_place" db:"resource_list_place"`
	ResourceListSelect      string  `json:"resource_list_select" db:"resource_list_select"`
	ResourceListSoftware    string  `json:"resource_list_software" db:"resource_list_software"`
	ResourceListWallTime    int64   `json:"resource_list_walltime" db:"resource_list_walltime"`
	Stime                   int64   `json:"stime" db:"stime"`
	SessionID               int64   `json:"session_id" db:"session_id"`
	JobDir                  string  `json:"jobdir" db:"jobdir"`
	SubState                int64   `json:"substate" db:"substate"`
	VariableList            string  `json:"variable_list" db:"variable_list"`
	VariableListHome        string  `json:"variable_list_home" db:"variable_list_home"`
	VariableListLang        string  `json:"variable_list_lang" db:"variable_list_lang"`
	VariableListLogname     string  `json:"variable_list_logname" db:"variable_list_logname"`
	VariableListPath        string  `json:"variable_list_path" db:"variable_list_path"`
	VariableListMail        string  `json:"variable_list_mail" db:"variable_list_mail"`
	VariableListShell       string  `json:"variable_list_shell" db:"variable_list_shell"`
	VariableListWorkdir     string  `json:"variable_list_workdir" db:"variable_list_workdir"`
	VariableListSystem      string  `json:"variable_list_system" db:"variable_list_system"`
	VariableListQueue       string  `json:"variable_list_queue" db:"variable_list_queue"`
	VariableListHost        string  `json:"variable_list_host" db:"variable_list_host"`
	Comment                 string  `json:"comment" db:"comment"`
	Etime                   int64   `json:"etime" db:"etime"`
	RunCount                int64   `json:"run_count" db:"run_count"`
	SubmitArguments         string  `json:"submit_arguments" db:"submit_arguments"`
	Project                 string  `json:"project" db:"project"`
}

qstat gather jobs information.

type QstatNodeInfo

type QstatNodeInfo struct {
	NodeName                           string `json:"node_name" db:"node_name"`
	Mom                                string `json:"mom" db:"mom"`
	Ntype                              string `json:"ntype" db:"ntype"`
	State                              string `json:'state" db:"state"`
	Pcpus                              int64  `json:"pcpus" db:"pcpus"`
	Jobs                               string `json:"jobs" db:"jobs"`
	ResourcesAvailableArch             string `json:"resources_available_arch" db:"resources_available_arch"`
	ResourcesAvailableHost             string `json:"resources_available_host" db:"resources_available_host"`
	ResourcesAvailableMem              int64  `json:"resources_available_mem" db:"resources_available_mem"`
	ResourcesAvailableNcpus            int64  `json:"resources_available_ncpus" db:"resources_available_ncpus"`
	ResourcesAvailableApplications     string `json:"resources_available_pas_applications_enabled" db:"resources_available_pas_applications_enabled"`
	ResourcesAvailablePlatform         string `json:"resources_available_platform" db:"resources_available_platform"`
	ResourcesAvailableSoftware         string `json:"resources_availabled_software" db:"resources_available_software"`
	ResourcesAvailableVnodes           string `json:"resources_available_vnodes" db:"resources_available_vnodes"`
	ResourcesAssignedAcceleratorMemory int64  `json:"resources_assigned_accelerator_memory" db:"resources_assigned_accelerator_memory"`
	ResourcesAssignedHbmem             int64  `json:"resources_assigned_hbmem" db:"resources_assigned_hbmem"`
	ResourcesAssignedMem               int64  `json:"resources_assigned_mem" db:"resources_assigned_mem"`
	ResourcesAssignedNaccelerators     int64  `json:"resources_assigned_naccelerators" db:"resources_assigned_naccelerators"`
	ResourcesAssignedNcpus             int64  `json:"resources_assigned_ncpus" db:"resources_assigned_ncpus"`
	ResourcesAssignedVmem              int64  `json:"resources_assigned_vmem" db:"resources_assigned_vmem"`
	ResvEnable                         int64  `json:"resv_enable" db:"resv_enable"`
	Sharing                            string `json:"sharing" db:"sharing"`
	LastStateChangeTime                int64  `json:"last_state_change_time" db:"last_state_change_time"`
	LastUsedTime                       int64  `json:"last_used_time" db:"last_used_time"`
}

qstat gather node information.

type QstatQueueInfo

type QstatQueueInfo struct {
	QueueName               string `json:"queue_name" db:"queue_name"`
	QueueType               string `json:"queue_type" db:"queue_type"`
	TotalJobs               int64  `json:"total_jobs" db:"total_jobs"`
	StateCountTransit       int64  `json:"state_count_transit" db:"state_count_transit"`
	StateCountQueued        int64  `json:"state_count_queued" db:"state_count_queued"`
	StateCountHeld          int64  `json:"state_count_held" db:"state_count_held"`
	StateCountWaiting       int64  `json:"state_count_waiting" db:"state_count_waiting"`
	StateCountRunning       int64  `json:"state_count_running" db:"state_count_running"`
	StateCountExiting       int64  `json:"state_count_exiting" db:"state_count_exiting"`
	StateCountBegun         int64  `json:"state_count_begun" db:"state_count_begun"`
	ResourcesAssignedNcpus  int64  `json:"resources_assigned_ncpus" db:"resources_assigned_ncpus"`
	ResourcesAssignedNodect int64  `json:"resources_assigned_nodect" db:"resources_assigned_nodect"`
	Enable                  int64  `json:"enable" db:"enable"`
	Started                 int64  `json:"started" db:"started"`
}

qstat gather queue information.

type QstatServerInfo

type QstatServerInfo struct {
	ServerName              string `json:"server_name" db:"server_name"`
	ServerState             int64  `json:"server_state" db:"server_state"`
	ServerHost              string `json:"server_host" db:"server_host"`
	ServerScheduling        int64  `json:"server_scheduling" db:"server_scheduling"`
	TotalJobs               int64  `json:"total_jobs" db:"total_jobs"`
	StateCountTransit       int64  `json:"state_count_transit" db:"state_count_transit"`
	StateCountQueued        int64  `json:"state_count_queued" db:"state_count_queued"`
	StateCountHeld          int64  `json:"state_count_held" db:"state_count_held"`
	StateCountWaiting       int64  `json:"state_count_waiting" db:"state_count_waiting"`
	StateCountRunning       int64  `json:"state_count_running" db:"state_count_running"`
	StateCountExiting       int64  `json:"state_count_exiting" db:"state_count_exiting"`
	StateCountBegun         int64  `json:"state_count_begun" db:"state_count_begun"`
	DefaultQueue            string `json:"default_queue" db:"default_queue"`
	LogEvents               int64  `json:"log_events" db:"log_events"`
	MailFrom                string `json:"mail_from" db:"mail_from"`
	QueryOtherJobs          int64  `json:"query_other_jobs" db:"query_other_jobs"`
	ResourcesDefaultNcpus   int64  `json:"resources_default_ncpus" db:"resources_default_ncpus"`
	DefaultChunkNcpus       int64  `json:"default_chunk_ncpus" db:"default_chunk_ncpus"`
	ResourcesAssignedNcpus  int64  `json:"resources_assigned_ncpus" db:"resources_assigned_ncpus"`
	ResourcesAssignedNodect int64  `json:"resources_assigned_nodect" db:"resources_assigned_nodect"`
	SchedulerIteration      int64  `json:"scheduler_iteration" db:" scheduler_iteration"`
	Flicenses               int64  `json:"flicenses" db:"flicenses"`
	ResvEnable              int64  `json:"resv_enable" db:"resv_enable"`
	NodeFailRequeue         int64  `json:"node_fail_requeue" db:"node_fail_requeue"`
	MaxArraySize            int64  `json:"max_array_size" db:"max_array_size"`
	PBSLicenseMin           int64  `json:"pbs_license_min" db:"pbs_license_min"`
	PBSLicenseMax           int64  `json:"pbs_license_max" db:"pbs_license_max"`
	PBSLicenseLingerTime    int64  `json:"pbs_license_linger_time" db:"pbs_license_linger_time"`
	LicenseCountAvailGlobal int64  `json:"license_count_avail_global" db:"license_count_avail_global"`
	LicenseCountAvailLocal  int64  `json:"license_count_avail_local" db:"license_count_avail_local"`
	LicenseCountUsed        int64  `json:"license_count_used" db:"license_count_used"`
	LicenseCountHighUse     int64  `json:"license_count_high_use" db:"license_count_high_use"`
	PBSVersion              string `json:"pbs_version" db:"pbs_version"`
	EligibleTimeEnable      int64  `json:"eligible_time_enable" db:"eligible_time_enable"`
	JobHistoryEnable        int64  `json:"job_history_enable" db:"job_history_enable"`
	JobHistoryDuration      int64  `json:"job_history_duration" db:"job_history_duration"`
	MaxConcurrentProvision  int64  `json:"max_concurrent_provision" db:"max_concurrent_provision"`
	PowerProvisioning       int64  `json:"power_provisioning" db:"power_provisioning"`
}

qstat gather server state information.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL