Is it possible to execute queued jobs automatically after computing nodes up?


#1

Hello, members.

I’m newbie PBSpro.

Is it possible to execute queued jobs automatically after computing nodes up?
I want to execute the following job automatically after nodes up.

my pbs:
                                                            Req'd  Req'd   Elap
Job ID          Username Queue    Jobname    SessID NDS TSK Memory Time  S Time
--------------- -------- -------- ---------- ------ --- --- ------ ----- - -----
65.my-cluster0  user     workq    test.qsub     --    1   1    --    --  Q   --

Our PC use computing nodes during the night only. (22:00 ~ 7:00)
All nodes use for another purpose in the daytime.
It is mean that all nodes stop during the daytime.

During the daytime, PBS server enqueues jobs.
And When computing time start, execute those jobs.

My problem is this queue does not run automatically after nodes up.
(At least few minutes.)

When I submit a new job(qsub newjob), the stopped job start at the same time.

Could you tell me any idea?

Best regards.

Environment

  • OS: CentOS7

  • PBS: pbspro-server-ohpc-14.1.2 (OpenHPC package)

    set server scheduling = True
    set server default_queue = workq
    set server log_events = 511
    set server mail_from = adm
    set server query_other_jobs = True
    set server resources_default.ncpus = 1
    set server default_chunk.ncpus = 1
    set server scheduler_iteration = 600
    set server resv_enable = True
    set server node_fail_requeue = 310
    set server max_array_size = 10000
    set server default_qsub_arguments = -V
    set server pbs_license_min = 0
    set server pbs_license_max = 2147483647
    set server pbs_license_linger_time = 31536000
    set server license_count = Avail_Global:1000000 Avail_Local:1000000 Used:0 High_Use:0 Avail_Sockets:1000000 Unused_Sockets:1000000
    set server eligible_time_enable = False
    set server job_history_enable = True
    set server max_concurrent_provision = 5

    Queue workq
    queue_type = Execution
    total_jobs = 1
    state_count = Transit:0 Queued:1 Held:0 Waiting:0 Running:0 Exiting:0 Begun:0
    resources_assigned.ncpus = 0
    resources_assigned.nodect = 0
    enabled = True
    started = True


#2

Hello @hiroyuki-sato,

The queued jobs won’t start until the next scheduler iteration occurs. You can reduce the interval of time between iterations using qmgr…
Qmgr: set server scheduler_iteration = 30
This will reduce the scheduler iteration from 600 seconds (the default) to 30 seconds.

You should also check out the section on primetime and non-primetime queues in the administrators guide here: https://www.pbsworks.com/SupportGT.aspx?d=PBS-Professional,-Documentation

Please continue to reach out to the community if you have more questions.

Thanks,

Mike


#3

Hello, @mkaro

Thank you for the reply.
It worked as I expected.