// KqMessage package message // Hpc-ac type HpcSubmitMessage struct { TaskId int64 `json:"taskId"` SlurmVersion string `json:"slurmVersion"` Apptype string `json:"apptype,optional"` Appname string `json:"appname,optional"` StrJobManagerID int64 `json:"strJobManagerID,optional"` MapAppJobInfo MapAppJobInfo `json:"mapAppJobInfo,optional"` Account string `json:"account,optional"` // Acctg_freq string `json:"acctg_freq,optional"` Alloc_node string `json:"alloc_node,optional"` Alloc_resp_port int32 `json:"alloc_resp_port,optional"` Alloc_sid int32 `json:"alloc_sid,optional"` Argc int32 `json:"argc,optional"` Argv []Argv `json:"Argv,optional"` Array_inx string `json:"array_inx,optional"` Begin_time int64 `json:"begin_time,optional"` Ckpt_interval int32 `json:"ckpt_interval,optional"` Ckpt_dir string `json:"ckpt_dir,optional"` Comment string `json:"comment,optional"` Contiguous int32 `json:"contiguous,optional"` Cpu_bind string `json:"cpu_bind,optional"` Cpu_bind_type int32 `json:"cpu_bind_type,optional"` Dependency string `json:"dependency,optional"` End_time int64 `json:"end_time,optional"` Environment []Environment `json:"Environment,optional"` Env_size int32 `json:"env_size,optional"` Exc_nodes string `json:"exc_nodes,optional"` Features string `json:"features,optional"` Gres string `json:"gres,optional"` Group_id int32 `json:"group_id,optional"` Immediate int32 `json:"immediate,optional"` Job_id int32 `json:"job_id,optional"` Kill_on_node_fail int32 `json:"kill_on_node_fail,optional"` Licenses string `json:"licenses,optional"` Mail_type int32 `json:"mail_type,optional"` Mail_user string `json:"mail_user,optional"` Mem_bind string `json:"mem_bind,optional"` Mem_bind_type int32 `json:"mem_bind_type,optional"` Name string `json:"name,optional"` // Network string `json:"network,optional"` Nice int32 `json:"nice,optional"` Num_tasks int32 `json:"num_tasks,optional"` Open_mode int32 `json:"open_mode,optional"` Other_port int32 `json:"other_port,optional"` Overcommit int32 `json:"overcommit,optional"` Partition string `json:"partition,optional"` Plane_size int32 `json:"plane_size,optional"` Priority int32 `json:"priority,optional"` Profile int32 `json:"profile,optional"` Qos string `json:"qos,optional"` Resp_host string `json:"resp_host,optional"` Req_nodes string `json:"req_nodes,optional"` Requeue int32 `json:"requeue,optional"` Reservation string `json:"reservation,optional"` Script string `json:"script,optional"` // Shared int32 `json:"shared,optional"` Spank_job_env_size int32 `json:"spank_job_env_size,optional"` Task_dist int32 `json:"task_dist,optional"` Time_limit int32 `json:"time_limit,optional"` Time_min int32 `json:"time_min,optional"` User_id int32 `json:"user_id,optional"` // Wait_all_nodes int32 `json:"wait_all_nodes,optional"` Warn_signal int32 `json:"warn_signal,optional"` Warn_time int32 `json:"warn_time,optional"` Work_dir string `json:"work_dir,optional"` Cpus_per_task int32 `json:"cpus_per_task,optional"` Min_cpus int32 `json:"min_cpus,optional"` // Max_cpus int32 `json:"max_cpus,optional"` Min_nodes int32 `json:"min_nodes,optional"` Max_nodes int32 `json:"max_nodes,optional"` Boards_per_node int32 `json:"boards_per_node,optional"` Sockets_per_board int32 `json:"sockets_per_board,optional"` Sockets_per_node int32 `json:"sockets_per_node,optional"` Cores_per_socket int32 `json:"cores_per_socket,optional"` Threads_per_core int32 `json:"threads_per_core,optional"` Ntasks_per_node int32 `json:"ntasks_per_node,optional"` Ntasks_per_socket int32 `json:"ntasks_per_socket,optional"` Ntasks_per_core int32 `json:"ntasks_per_core,optional"` Ntasks_per_board int32 `json:"ntasks_per_board,optional"` Pn_min_cpus int32 `json:"pn_min_cpus,optional"` Pn_min_memory int32 `json:"pn_min_memory,optional"` Pn_min_tmp_disk int32 `json:"pn_min_tmp_disk,optional"` Reboot int32 `json:"reboot,optional"` Rotate int32 `json:"rotate,optional"` Req_switch int32 `json:"req_switch,optional"` Std_err string `json:"std_err,optional"` Std_in string `json:"std_in,optional"` Std_out string `json:"std_out,optional"` Wait4switch int32 `json:"wait4switch,optional"` Wckey string `json:"wckey,optional"` } type Argv struct { Argv string `json:"argv,optional"` } type Environment struct { Environment string `json:"environment,optional"` } type MapAppJobInfo struct { GAP_CMD_FILE string `json:"GAP_CMD_FILE"` //命令行内容 GAP_NNODE string `json:"GAP_NNODE"` //节点个数(当指定该参数时,GAP_NODE_STRING必须为"") GAP_NODE_STRING string `json:"GAP_NODE_STRING,optional"` //指定节点(当指定该参数时,GAP_NNODE必须为"") GAP_SUBMIT_TYPE string `json:"GAP_SUBMIT_TYPE"` //cmd(命令行模式) GAP_JOB_NAME string `json:"GAP_JOB_NAME"` //作业名称 GAP_WORK_DIR string `json:"GAP_WORK_DIR"` //工作路径 GAP_QUEUE string `json:"GAP_QUEUE"` //队列名称 GAP_NPROC string `json:"GAP_NPROC,optional"` //总核心数(GAP_NPROC和GAP_PPN选其一填写) GAP_PPN string `json:"GAP_PPN,optional"` //CPU核心/节点(GAP_NPROC和GAP_PPN选其一填写) GAP_NGPU string `json:"GAP_NGPU,optional"` //GPU卡数/节点 GAP_NDCU string `json:"GAP_NDCU,optional"` //DCU卡数/节点 GAP_JOB_MEM string `json:"GAP_JOB_MEM,optional"` //每个节点内存值,单位为MB/GB GAP_WALL_TIME string `json:"GAP_WALL_TIME"` //最大运行时长(HH:MM:ss) GAP_EXCLUSIVE string `json:"GAP_EXCLUSIVE,optional"` // 是否独占节点,1为独占,空为非独占 GAP_APPNAME string `json:"GAP_APPNAME"` //BASE(基础应用),支持填写具体的应用英文名称 GAP_MULTI_SUB string `json:"GAP_MULTI_SUB,optional"` //作业组长度,建议为小于等于50的正整数 GAP_STD_OUT_FILE string `json:"GAP_STD_OUT_FILE"` //工作路径/std.out.%j GAP_STD_ERR_FILE string `json:"GAP_STD_ERR_FILE"` //工作路径/std.err.%j }