pbs_sched.8B 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152
  1. .\" Copyright (C) 1994-2018 Altair Engineering, Inc.
  2. .\" For more information, contact Altair at www.altair.com.
  3. .\"
  4. .\" This file is part of the PBS Professional ("PBS Pro") software.
  5. .\"
  6. .\" Open Source License Information:
  7. .\"
  8. .\" PBS Pro is free software. You can redistribute it and/or modify it under the
  9. .\" terms of the GNU Affero General Public License as published by the Free
  10. .\" Software Foundation, either version 3 of the License, or (at your option) any
  11. .\" later version.
  12. .\"
  13. .\" PBS Pro is distributed in the hope that it will be useful, but WITHOUT ANY
  14. .\" WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  15. .\" FOR A PARTICULAR PURPOSE.
  16. .\" See the GNU Affero General Public License for more details.
  17. .\"
  18. .\" You should have received a copy of the GNU Affero General Public License
  19. .\" along with this program. If not, see <http://www.gnu.org/licenses/>.
  20. .\"
  21. .\" Commercial License Information:
  22. .\"
  23. .\" For a copy of the commercial license terms and conditions,
  24. .\" go to: (http://www.pbspro.com/UserArea/agreement.html)
  25. .\" or contact the Altair Legal Department.
  26. .\"
  27. .\" Altair’s dual-license business model allows companies, individuals, and
  28. .\" organizations to create proprietary derivative works of PBS Pro and
  29. .\" distribute them - whether embedded or bundled with other software -
  30. .\" under a commercial license agreement.
  31. .\"
  32. .\" Use of Altair’s trademarks, including but not limited to "PBS™",
  33. .\" "PBS Professional®", and "PBS Pro™" and Altair’s logos is subject to Altair's
  34. .\" trademark licensing policies.
  35. .\"
  36. .TH pbs_sched 8B "16 April 2018" Local "PBS Professional"
  37. .SH NAME
  38. .B pbs_sched
  39. \- run a PBS scheduler
  40. .SH SYNOPSIS
  41. .B pbs_sched
  42. [-a <alarm>] [-c <clientsfile>] [-d <home dir>]
  43. [-I <scheduler name>] [-L <logfile>] [-n] [-N]
  44. [-p <output file>] [-R <port number>] [-S <port number>]
  45. .B pbs_sched
  46. --version
  47. .SH DESCRIPTION
  48. .B pbs_sched
  49. is a PBS scheduling daemon. It schedules PBS jobs.
  50. .LP
  51. .B pbs_sched
  52. must be executed with root permission on Linux or Admin privilege on Windows.
  53. .SH OPTIONS
  54. .IP "-a <alarm>" 13
  55. .B Deprecated.
  56. Overwrites value of
  57. .I sched_cycle_length
  58. scheduler attribute.
  59. .br
  60. Time in seconds to wait for a scheduling cycle to finish.
  61. .br
  62. Format: Time, in seconds.
  63. .br
  64. .IP "-c <clientsfile>" 13
  65. Add clients to this scheduler's list of known clients.
  66. The
  67. .I clientsfile
  68. contains single-line entries of the form
  69. .RS 17
  70. .I $clienthost <hostname>
  71. .RE
  72. .IP
  73. Each
  74. .I hostname
  75. is added to the list of hosts allowed to connect to this scheduler.
  76. If
  77. .I clientsfile
  78. cannot be opened, this scheduler aborts.
  79. Path can be absolute or relative. If relative, it is relative to
  80. PBS_HOME/sched_priv.
  81. .IP "-d <home dir>" 13
  82. The directory in which this scheduler will run.
  83. .br
  84. Default: PBS_HOME/sched_priv.
  85. .IP "-I <scheduler name>" 13
  86. Name of scheduler to start. Required when starting a multisched.
  87. .IP "-L <logfile>" 13
  88. The absolute path and filename of the log file.
  89. A scheduler writes its PBS version and build information to
  90. the logfile whenever it starts up or
  91. the logfile is rolled to a new file. See the
  92. .I -d
  93. option.
  94. .br
  95. Default: A scheduler opens a file named for the current
  96. date in the PBS_HOME/sched_logs directory.
  97. .IP "-n" 13
  98. Tells this scheduler to not restart itself if it receives a
  99. .I sigsegv
  100. or a
  101. .I sigbus.
  102. A scheduler by default restarts itself if it receives either
  103. of these two signals more than five minutes after starting.
  104. A scheduler does not restart itself if it receives
  105. either one within five minutes of starting.
  106. .IP "-N" 13
  107. Instructs this scheduler not to detach itself from the current session.
  108. .LP
  109. .IP "-p <output file>" 13
  110. Any output which is written to standard out or standard error is
  111. written to
  112. .I output file.
  113. The pathname can be absolute or relative,
  114. in which case it is relative to PBS_HOME/sched_priv.
  115. See the
  116. .I -d
  117. option.
  118. .br
  119. Default: PBS_HOME/sched_priv/sched_out
  120. .IP "-R <port number>" 13
  121. The port for MOM to use. If this option is not given,
  122. the port number is taken from PBS_MANAGER_SERVICE_PORT, in pbs.conf.
  123. .br
  124. Default: 15003
  125. .IP "-S <port number>" 13
  126. The port for this scheduler to use.
  127. Required when starting a multisched.
  128. For the default scheduler, if this option is not specified
  129. the default port is taken from PBS_SCHEDULER_SERVICE_PORT,
  130. in pbs.conf.
  131. .br
  132. Default value for default scheduler: 15004
  133. .br
  134. Default value for multisched: none
  135. .IP "--version" 13
  136. The
  137. .B pbs_sched
  138. command returns its PBS version information and exits.
  139. This option can only be used alone.
  140. .SH CONFIGURATION FILE
  141. The file PBS_HOME/sched_priv/sched_config contains configuration parameters
  142. for this scheduler. Each entry must be a single unbroken line.
  143. .br
  144. Format:
  145. .I name: value [prime | non-prime | all | none]
  146. .br
  147. where
  148. .RS 3
  149. .IP name 13
  150. Must not contain whitespace.
  151. .IP value 13
  152. Must be double-quoted if it contains whitespace.
  153. .I value
  154. can be
  155. .I True | False | <number> | <string>.
  156. .I True
  157. and
  158. .I False
  159. are not case-sensitive.
  160. .IP "[prime | non-prime | all | none]" 13
  161. Specifies when this setting applies:
  162. during primetime,
  163. non-primetime, all the time, or none of the time. A blank third field
  164. is equivalent to
  165. .I all
  166. which means that it applies to both primetime and non-primetime.
  167. .br
  168. Valid values:
  169. .I "all", "ALL", "none", "NONE", "prime", "PRIME", "non_prime", "NON_PRIME"
  170. .LP
  171. .RE
  172. Any line starting with a hashmark, "#", is a comment, and is ignored.
  173. .B Configuration Parameters
  174. .br
  175. .IP "backfill " 13
  176. Toggle that controls whether PBS uses backfilling.
  177. If this is set to True, this scheduler attempts to schedule
  178. smaller jobs around higher-priority jobs when using
  179. .I strict_ordering,
  180. as long as running the smaller jobs won't change the
  181. start time of the jobs they were scheduled around. A scheduler
  182. chooses jobs in the standard order, so other high-priority jobs will be
  183. considered first in the set to fit around the highest-priority job.
  184. When this parameter is
  185. .I True
  186. and
  187. .I help_starving_jobs
  188. is
  189. .I True,
  190. this scheduler backfills around starving jobs.
  191. Can be used
  192. with
  193. .I strict_ordering
  194. and
  195. .I help_starving_jobs.
  196. .br
  197. Format: Boolean.
  198. .br
  199. Default:
  200. .I True all
  201. .IP "backfill_prime " 13
  202. This Scheduler will not run jobs which would overlap
  203. the boundary between primetime and non-primetime. This assures
  204. that jobs restricted to running in either primetime or non-primetime
  205. can start as soon as the time boundary happens. See also
  206. .I prime_spill, prime_exempt_anytime_queues.
  207. .br
  208. Format: Boolean.
  209. .br
  210. Default:
  211. .I False all
  212. .IP "by_queue " 13
  213. If set to
  214. .I True,
  215. all jobs that can be run from the highest-priority
  216. queue are run, then any jobs that can be run from the next queue are
  217. run, and so on. If
  218. .I by_queue
  219. is set to
  220. .I False,
  221. all jobs are treated as if they are in one large queue. The
  222. .I by_queue
  223. parameter is overridden
  224. by the
  225. .I round_robin
  226. parameter when
  227. .I round_robin
  228. is set to
  229. .I True.
  230. .br
  231. Format: Boolean.
  232. .br
  233. Default:
  234. .I True all
  235. .IP cpus_per_ssinode 13
  236. .B Deprecated.
  237. Such configuration now occurs automatically.
  238. .IP dedicated_prefix 13
  239. Queue names with this prefix are treated as dedicated
  240. queues, meaning jobs in that queue are considered for
  241. execution only when the system is in dedicated time as specified in the
  242. configuration file PBS_HOME/sched_priv/dedicated_time.
  243. .br
  244. Format: String
  245. .br
  246. Default:
  247. .I ded
  248. .IP fair_share 13
  249. Enables the fairshare algorithm, and
  250. turns on usage collecting. Jobs will be selected based on a
  251. function of their recent usage and priority (shares). Not a prime option.
  252. .br
  253. Format: Boolean
  254. .br
  255. Default:
  256. .I False all
  257. .IP fairshare_decay_factor 13
  258. Decay multiplier for fairshare usage reduction. Each decay period, the
  259. usage is multiplied by this value.
  260. .br
  261. Valid values: between 0 and 1, not inclusive. Not a prime option.
  262. .br
  263. Format: Float
  264. .br
  265. Default:
  266. .I 0.5
  267. .IP fairshare_decay_time 13
  268. Time between fairshare usage decay operations. Not a prime option.
  269. .br
  270. Format: Duration
  271. .br
  272. Default:
  273. .I 24:00:00
  274. .IP fairshare_entity 13
  275. Specifies the entity for which fairshare usage data will
  276. be collected. Can be
  277. .I euser, egroup, Account_Name, queue,
  278. or
  279. .I egroup:euser.
  280. Not a prime option.
  281. .br
  282. Format: String
  283. .br
  284. Default:
  285. .I euser
  286. .IP fairshare_enforce_no_shares 13
  287. If this option is enabled, jobs whose entity has zero
  288. shares will never run. Requires
  289. .I fair_share
  290. parameter to be enabled.
  291. .br
  292. Format: Boolean
  293. .br
  294. Default:
  295. .I False
  296. .IP fairshare_usage_res 13
  297. Specifies the mathematical formula to use in fairshare calculations.
  298. Is composed of PBS resources as well as mathematical operations that
  299. are standard Python operators and/or those in the Python math module.
  300. When using a PBS resource, if
  301. .I resources_used.<resource name>
  302. exists, that value is used. Otherwise, the value is taken from
  303. .I Resource_List.<resource name>.
  304. Not a prime option.
  305. .br
  306. Format: String
  307. .br
  308. Default:
  309. .I cput
  310. .IP half_life 13
  311. .B Deprecated
  312. (as of 13.0).
  313. The half-life for fairshare usage; after the amount of time
  314. specified, the fairshare usage is halved. Requires that
  315. .I fair_share
  316. parameter be enabled. Not a prime option.
  317. .br
  318. Format: Duration
  319. .br
  320. Default:
  321. .I 24:00:00
  322. .IP help_starving_jobs 13
  323. Setting this option enables starving job support. Once
  324. jobs have waited for the amount of time given by
  325. .I max_starve
  326. they are considered starving. If a job is considered starving, no
  327. lower-priority jobs will run until the starving job can be run, unless
  328. backfilling is also specified. To use this option, the
  329. .I max_starve
  330. configuration parameter needs to be set as well. See also
  331. .I backfill, max_starve,
  332. and the server's
  333. .I eligible_time_enable
  334. attribute.
  335. .br
  336. At each scheduler iteration, PBS calculates
  337. .I estimated.start_time
  338. and
  339. .I estimated.exec_vnode
  340. for starving jobs being backfilled around.
  341. .br
  342. Format: Boolean
  343. .br
  344. Default:
  345. .I True all
  346. .IP job_sort_key 13
  347. .RS
  348. Specifies how jobs should be sorted.
  349. .I job_sort_key
  350. can be used to sort either by resources or by special case sorting
  351. routines. Multiple
  352. .I job_sort_key
  353. entries can be used, one to a line, in which
  354. case the first entry will be the primary sort key, the second will be
  355. used to sort equivalent items from the first sort, etc.
  356. The
  357. .I HIGH
  358. option implies descending sorting,
  359. .I LOW
  360. implies ascending. See example for details.
  361. This attribute is overridden by the
  362. .I job_sort_formula
  363. attribute.
  364. If both are set,
  365. .I job_sort_key
  366. is ignored and an error message is
  367. printed.
  368. .br
  369. Syntax:
  370. .br
  371. .I job_sort_key: """<resource name> HIGH|LOW"""
  372. .br
  373. .I job_sort_key: """fairshare_perc HIGH|LOW"""
  374. .br
  375. .I job_sort_key: """job_priority HIGH|LOW"""
  376. .br
  377. There are three special case sorting routines, which can be used
  378. instead of
  379. .I <resource name>:
  380. .RS
  381. .IP "fairshare_perc HIGH" 13
  382. Sort based on how much fairshare percentage the entity deserves,
  383. based on the values in the
  384. .I resource group
  385. file. If user A has more priority than user B, all of user A's
  386. jobs will always run first. Past history is not used.
  387. This should only
  388. be used if entity share (strict priority) sorting is needed.
  389. Incompatible with
  390. .I fair_share
  391. scheduling parameter being
  392. .I True.
  393. .IP "job_priority HIGH | LOW" 13
  394. Sort jobs by the job
  395. .I priority
  396. attribute regardless of job owner.
  397. .IP "sort_priority HIGH|LOW" 13
  398. .B Deprecated.
  399. See
  400. .I job_priority
  401. above.
  402. .RE
  403. The following example shows how to sort jobs so that those with
  404. high CPU count come first:
  405. .RS
  406. job_sort_key: "ncpus HIGH" all
  407. .br
  408. .RE
  409. The following example shows how to sort jobs so that those with
  410. lower memory come first:
  411. .br
  412. .RS
  413. job_sort_key: "mem LOW" prime
  414. .RE
  415. .br
  416. Format: Quoted string
  417. .br
  418. Default: Not in force
  419. .RE
  420. .IP key 13
  421. .B Deprecated.
  422. Use
  423. .I job_sort_key.
  424. .IP load_balancing 13
  425. When set to
  426. .I True,
  427. this scheduler takes into account the load average on vnodes as
  428. well as the resources listed in the
  429. .I resources
  430. line in sched_config. Load balancing can result in overloaded CPUs.
  431. .br
  432. Format: Boolean
  433. .br
  434. Default:
  435. .I False all
  436. .IP load_balancing_rr 13
  437. .B Deprecated.
  438. To duplicate this setting, enable
  439. .I load_balancing
  440. and
  441. .I set smp_cluster_dist
  442. to
  443. .I round_robin.
  444. .IP log_filter 13
  445. Defines which event types to keep out of this scheduler's
  446. logfile. The value should be set to the bitwise OR of the event
  447. classes which should be filtered. A value of 0 specifies maximum
  448. logging.
  449. .br
  450. Format: Integer
  451. .br
  452. Default:
  453. .I 3328
  454. .IP max_starve 13
  455. The amount of time before a job is considered starving. This
  456. variable is used only if
  457. .I help_starving_jobs
  458. is set.
  459. .br
  460. Upper limit: None
  461. .br
  462. Format: Duration
  463. .br
  464. Default:
  465. .I 24:00:00
  466. .IP mem_per_ssinode 13
  467. .B Deprecated.
  468. Such configuration now occurs automatically.
  469. .IP mom_resources 13
  470. This option is used to query the MoMs to set the value of
  471. .I resources_available.<resource name>
  472. where
  473. .I resource name
  474. is a site-defined
  475. resource. Each MoM is queried with the resource name and the
  476. return value is used to replace
  477. .I resources_available.<resource name>
  478. on that vnode. On a multi-vnoded machine with a natural vnode,
  479. all vnodes share anything set in
  480. .I mom_resources.
  481. .br
  482. Format: String
  483. .IP node_sort_key 13
  484. .RS
  485. Defines sorting on resource or priority values on vnodes. Resource
  486. must be numerical, for example, long or float. Up to 20
  487. .I node_sort_key entries
  488. can be used, in which
  489. case the first entry will be the primary sort key, the second will be
  490. used to sort equivalent items from the first sort, etc.
  491. .br
  492. Syntax:
  493. .br
  494. .I node_sort_key: <resource name>|sort_priority <HIGH | LOW>
  495. .br
  496. .I node_sort_key: <resource name> <HIGH | LOW> <total | assigned | unused>
  497. .br
  498. where
  499. .RS
  500. .IP total
  501. Use the
  502. .I resources_available
  503. value.
  504. .IP assigned
  505. Use the
  506. .I resources_assigned
  507. value.
  508. .IP unused
  509. Use the value given by
  510. .I resources_available - resources_assigned.
  511. .IP sort_priority
  512. Sort vnodes by the value of the vnode
  513. .I priority
  514. attribute.
  515. .RE
  516. .br
  517. When sorting on a resource, the default third field is "total".
  518. .br
  519. Format: String
  520. .br
  521. Default:
  522. .I node_sort_key: sort_priority HIGH all
  523. .RE
  524. .IP nonprimetime_prefix 13
  525. Queue names which start with this prefix are treated
  526. as non-primetime queues. Jobs in these queues
  527. run only during non-primetime. Primetime and non-primetime are
  528. defined in the holidays file.
  529. .br
  530. Format: String
  531. .br
  532. Default:
  533. .I np_
  534. .IP peer_queue 13
  535. Defines the mapping of a pulling queue to a furnishing queue
  536. for peer scheduling. Maximum number is 50 peer queues per
  537. scheduler.
  538. .br
  539. Format: String
  540. .br
  541. Default: Unset
  542. .IP preemptive_sched 13
  543. Enables job preemption. See
  544. .I preempt_order.
  545. .br
  546. Format: String
  547. .br
  548. Default:
  549. .I True all
  550. .IP preempt_checkpoint 13
  551. .B Deprecated.
  552. Add "C" to
  553. .I preempt_order
  554. parameter.
  555. .IP preempt_fairshare 13
  556. .B Deprecated.
  557. Add "fairshare" to
  558. .I preempt_prio
  559. parameter.
  560. .IP preempt_order 13
  561. .RS
  562. Defines the order of preemption methods which the
  563. scheduler uses on jobs. This order can change depending on
  564. the percentage of time remaining on the job. The ordering can
  565. be any combination of
  566. .I S, C,
  567. and
  568. .I R.
  569. .RS
  570. .IP S
  571. Suspend
  572. .IP C
  573. Checkpoint
  574. .IP R
  575. Requeue
  576. .RE
  577. The usage is an ordering (SCR) optionally followed
  578. by a percentage of time remaining and another ordering.
  579. Must be a quoted list("").
  580. For example, PBS should first attempt to use suspension to preempt a
  581. job, and if that is unsuccessful, then requeue the job:
  582. .RS
  583. .I preempt_order: "SR"
  584. .RE
  585. For example, if the job has between 100% and 81% requested time
  586. remaining, first try to suspend the job, then try checkpoint, then
  587. requeue. If the job has between 80% and 51% requested time remaining,
  588. attempt suspend, then checkpoint. Between 50% and 0% time
  589. remaining, just attempt to suspend the job:
  590. .RS
  591. .I preempt_order: "SCR 80 SC 50 S"
  592. .RE
  593. .br
  594. Format: Quoted list
  595. .br
  596. Default:
  597. .I SCR
  598. .RE
  599. .IP preempt_prio 13
  600. .RS
  601. Specifies the ordering of priority for different preemption
  602. levels. Two or more job types may be combined at the
  603. same priority level with a + between them, using no whitespace.
  604. Comma-separated preemption levels are evaluated left to right,
  605. with higher priority to the left.
  606. The table below lists the six preemption levels.
  607. Any level not specified in the
  608. .I preempt_prio
  609. list is
  610. ignored.
  611. .RS
  612. .IP express_queue 13
  613. Jobs in express queues preempt other jobs. See also
  614. .I preempt_queue_prio.
  615. Does not require
  616. .I by_queue
  617. to be
  618. .I True.
  619. .IP starving_jobs 13
  620. When a job becomes starving it can preempt other jobs.
  621. .IP fairshare 13
  622. When the entity owning a job exceeds its fairshare limit.
  623. .IP queue_softlimits 13
  624. Jobs which are over their queue soft limits
  625. .IP server_softlimits 13
  626. Jobs which are over their server soft limits
  627. .IP normal_jobs 13
  628. The preemption level into which a job falls if it does not
  629. fit into any other specified level.
  630. .RE
  631. For example, starving jobs have the highest priority, then normal
  632. jobs, and jobs whose entities are over their fairshare limit are third
  633. highest:
  634. .RS
  635. .I preempt_prio: "starving_jobs, normal_jobs, fairshare"
  636. .RE
  637. For example,starving jobs whose entities are also over
  638. their fairshare limit are lower priority than normal jobs:
  639. .RS
  640. .I preempt_prio: "normal_jobs, starving_jobs+fairshare"
  641. .RE
  642. Format: Quoted list
  643. .br
  644. Default:
  645. .I """express_queue, normal_jobs"""
  646. .RE
  647. .IP preempt_queue_prio 13
  648. Specifies the minimum queue priority required for a queue to be
  649. classified as an express queue. Express queues do not require
  650. .I by_queue
  651. to be
  652. .I True.
  653. .br
  654. Format: Integer
  655. .br
  656. Default:
  657. .I 150
  658. .IP preempt_requeue 13
  659. .B Deprecated.
  660. Add an "R" to
  661. .I preempt_order
  662. parameter.
  663. .IP preempt_sort 13
  664. Specifies whether those jobs most eligible for preemption are sorted
  665. according to their start times.
  666. .br
  667. If set
  668. to
  669. .I min_time_since_start,
  670. first job preempted will be that with most recent start time.
  671. .br
  672. If not
  673. set, meaning that this parameter is commented out, preempted
  674. job will be that with longest running time.
  675. .br
  676. Must be commented out in order to be unset.
  677. .br
  678. Allowable values:
  679. .I min_time_since_start,
  680. or no setting.
  681. .br
  682. Format: String
  683. .br
  684. Default:
  685. .I min_time_since_start
  686. .IP preempt_starving 13
  687. .B Deprecated.
  688. Add
  689. .I """starving_jobs"""
  690. to
  691. .I preempt_prio
  692. parameter.
  693. .IP preempt_suspend 13
  694. .B Deprecated.
  695. Add an
  696. .I """S"""
  697. to
  698. .I preempt_order
  699. parameter.
  700. .IP primetime_prefix 13
  701. Queue names starting with this prefix are treated as
  702. primetime queues. Jobs in these queues run only during
  703. primetime. Primetime and non-primetime are defined in the
  704. holidays file.
  705. .br
  706. Format: String
  707. .br
  708. Default:
  709. .I p_
  710. .IP prime_exempt_anytime_queues 13
  711. Determines whether
  712. .I anytime
  713. queues are controlled by
  714. .I backfill_prime.
  715. If set to true, jobs in an
  716. .I anytime
  717. queue
  718. are not prevented from running across a primetime/nonprimetime
  719. or non-primetime/primetime boundary. If set to
  720. false, the jobs in an
  721. .I anytime
  722. queue may not cross this boundary,
  723. except for the amount specified by their
  724. .I prime_spill
  725. setting.
  726. See also
  727. .I backfill_prime, prime_spill.
  728. .br
  729. Format: Boolean
  730. .br
  731. Default:
  732. .I False
  733. .IP prime_spill 13
  734. .RS
  735. Specifies the amount of time a job can spill over from non-primetime
  736. into primetime or from primetime into non-primetime.
  737. This option is only meaningful if
  738. .I backfill_prime
  739. is
  740. .I True.
  741. This option can be separately specified for
  742. primetime and non-primetime. See also
  743. .I backfill_prime, prime_exempt_anytime_queues.
  744. .br
  745. For example, non-primetime jobs can spill into primetime by 1 hour:
  746. .RS
  747. .I prime_spill: 1:00:00 prime
  748. .RE
  749. For example, jobs in either prime/non-prime can spill into
  750. the other by 1 hour:
  751. .RS
  752. .I prime_spill: 1:00:00 all
  753. .RE
  754. .br
  755. Format: Duration
  756. .br
  757. Default:
  758. .I 00:00:00
  759. .RE
  760. .IP provision_policy
  761. Specifies how vnodes are selected for provisioning. Can be set by
  762. Manager only; readable by all. Can be set to one of the following:
  763. .RS
  764. .IP "avoid_provision" 5
  765. PBS first tries to satisfy the job's request from free vnodes that
  766. already have the requested AOE instantiated. PBS uses
  767. .I node_sort_key
  768. to sort these vnodes.
  769. If it cannot satisfy the job's request using vnodes that already have
  770. the requested AOE instantiated, PBS uses the server's
  771. .I node_sort_key
  772. to select the free vnodes that must be
  773. provisioned in order to run the job, choosing from any free vnodes,
  774. regardless of which AOE is instantiated on them.
  775. Of the selected vnodes, PBS provisions any that do not have the
  776. requested AOE instantiated on them.
  777. .IP "aggressive_provision" 5
  778. PBS selects vnodes to be provisioned without considering which AOE
  779. is currently instantiated.
  780. PBS uses the server's
  781. .I node_sort_key
  782. to select the vnodes on which to run the job,
  783. choosing from any free vnodes, regardless of which AOE is instantiated
  784. on them. Of the selected vnodes, PBS provisions any that do not have
  785. the requested AOE instantiated on them.
  786. .LP
  787. Format: string
  788. .br
  789. Default:
  790. .I "aggressive_provision"
  791. .RE
  792. .IP resources 13
  793. .RS
  794. Specifies those resources which are not to be over-allocated,
  795. or if Boolean, are to be honored, when
  796. scheduling jobs. Vnode-level Boolean resources are automatically
  797. enforced and do not need to be listed here. Limits are set
  798. by setting
  799. .I resources_available.<resource name>
  800. on vnodes, queues, and the server. A scheduler
  801. considers numeric (integer or float) items as consumable
  802. resources and ensures that no more are assigned than are available
  803. (e.g.
  804. .I ncpus
  805. or
  806. .I mem
  807. ). Any string resources are compared
  808. using string comparisons (e.g.
  809. .I arch
  810. ).
  811. .br
  812. If "host" is not added to the
  813. resources line, then when the user submits a job requesting a specific
  814. vnode in the following syntax:
  815. .RS
  816. qsub -l select=host=vnodeName
  817. .RE
  818. the job will run on any host.
  819. .br
  820. Format: String
  821. .br
  822. Default:
  823. .I ncpus, mem, arch, host, vnode, aoe
  824. .RE
  825. .IP resource_unset_infinite 13
  826. Resources in this list are treated as infinite if they are unset.
  827. Cannot be set differently
  828. for primetime and non-primetime.
  829. .br
  830. Example:
  831. .I resource_unset_infinite: vmem, foo_licenses
  832. .br
  833. Format: Comma-delimited list of resources
  834. .br
  835. Default: Empty list
  836. .IP round_robin 13
  837. If set to
  838. .I True,
  839. this scheduler considers one job from
  840. the first queue, then one job from the second queue, and so on
  841. in a circular fashion. If
  842. .I sort_queues
  843. is set to
  844. .I True,
  845. the queues are ordered with the highest-priority queue first. Each
  846. scheduling cycle starts with the same highest-priority queue,
  847. which will therefore get preferential treatment. If
  848. .I round_robin
  849. is set to
  850. .I False,
  851. this scheduler considers jobs according to the setting of the
  852. .I by_queue
  853. attribute.
  854. When
  855. .I True,
  856. overrides the
  857. .I by_queue
  858. attribute.
  859. .br
  860. Format: Boolean
  861. .br
  862. Default:
  863. .I False all
  864. .IP server_dyn_res 13
  865. Directs this scheduler to replace the server's
  866. .I resources_available
  867. values with new values returned
  868. by a site-specific external program.
  869. .br
  870. Format: String
  871. .br
  872. Default: Unset
  873. .IP smp_cluster_dist 13
  874. .RS
  875. .B Deprecated (12.2).
  876. Specifies how single-host jobs should be distributed to
  877. all hosts of the complex. Options:
  878. .RS
  879. .IP pack
  880. Keep putting jobs onto one host until it is full and then move on to the next.
  881. .IP round_robin
  882. Put one job on each vnode in turn before cycling back to the first one.
  883. .IP lowest_load
  884. Put the job on the lowest-loaded host.
  885. .RE
  886. .br
  887. Format: String
  888. .br
  889. Default:
  890. .I pack all
  891. .RE
  892. .IP sort_by 13
  893. .B Deprecated.
  894. Use
  895. .I job_sort_key.
  896. .IP sort_queues 13
  897. .B Deprecated.
  898. When set to
  899. .I True,
  900. queues are sorted so that the highest-priority queues
  901. are considered first. Queues are sorted by each queue's
  902. .I priority
  903. attribute. The queues are sorted in a descending
  904. fashion, that is, a queue with priority 6 comes before a
  905. queue with priority 3.
  906. When set to
  907. .I False,
  908. queues are not sorted.
  909. This is a prime option, which means it can be selectively
  910. applied to primetime or non-primetime.
  911. The sorted order of queues is not taken into consideration unless
  912. .I by_queue
  913. is set to
  914. .I True.
  915. .br
  916. Format: Boolean
  917. .br
  918. Default:
  919. .I True ALL
  920. .IP strict_fifo 13
  921. .B Deprecated.
  922. Use
  923. .I strict_ordering.
  924. .IP strict_ordering 13
  925. Specifies that jobs must be run in the order determined
  926. by whatever sorting parameters are being used. This means that
  927. a job cannot be skipped due to resources required not being
  928. available.
  929. If a job due to run next cannot run, no job will run, unless
  930. backfilling is used, in which case jobs can be backfilled around the job that is
  931. due to run next.
  932. .br
  933. Example line in PBS_HOME/sched_priv/sched_config:
  934. .RS
  935. .I strict_ordering: true ALL
  936. .br
  937. Format: Boolean
  938. .br
  939. Default:
  940. .I False all
  941. .RE
  942. .IP sync_time 13
  943. .B Deprecated.
  944. The amount of time between writing the fairshare usage
  945. data to disk. Requires
  946. .I fair_share
  947. to be enabled.
  948. .br
  949. Format: Duration
  950. .br
  951. Default:
  952. .I 1:00:00
  953. .IP unknown_shares 13
  954. The number of shares for the
  955. .I unknown
  956. group. These
  957. shares determine the portion of a resource to be allotted to that
  958. group via fairshare. Requires
  959. .I fair_share
  960. to be enabled.
  961. .br
  962. Format: Integer
  963. .br
  964. Default: The unknown group gets 0 shares
  965. .SH FORMATS
  966. .IP Boolean 10
  967. Allowable values (case insensitive): True|T|Y|1|False|F|N|0
  968. .IP Duration 10
  969. Period of time. Expressed either as
  970. .br
  971. .I \ \ \ integer seconds
  972. .br
  973. or
  974. .br
  975. .I \ \ \ [[hours:]minutes:]seconds[.milliseconds]
  976. .br
  977. Milliseconds are rounded to the nearest second.
  978. .LP
  979. .IP Float 10
  980. Allowable values: [+-] 0-9 [[0-9] ...][.][[0-9] ...]
  981. .IP Long 10
  982. Long integer.
  983. Allowable values: 0-9 [[0-9] ...], and + and -
  984. .IP Size 10
  985. Number of bytes or words. The size of a word is 64 bits.
  986. .br
  987. Format:
  988. .I <integer>[<suffix>]
  989. .br
  990. where
  991. .I suffix
  992. can be
  993. .RS 13
  994. .IP "\ b\ or\ \ w" 13
  995. bytes or words
  996. .IP "kb\ or\ kw"
  997. Kilobytes or kilowords (2 to the 10th, or 1024)
  998. .IP "mb\ or\ mw" 13
  999. Megabytes or megawords (2 to the 20th, or 1,048,576)
  1000. .IP "gb\ or\ gw" 13
  1001. Gigabytes or gigawords (2 to the 30th, or 1,073,741,824)
  1002. .IP "tb\ or\ tw" 13
  1003. Terabytes or terawords (2 to the 40th, or 1024 gigabytes)
  1004. .IP "pb\ or\ pw" 13
  1005. Petabytes or petawords (2 to the 50th, or 1,048,576 gigabytes)
  1006. .RE
  1007. .IP
  1008. Default:
  1009. .I bytes
  1010. .IP String 10
  1011. (Resource value)
  1012. .br
  1013. Any character, including the space character.
  1014. .br
  1015. Only one of the two types of quote characters, " or ', may appear in any given value.
  1016. .br
  1017. Allowable values: [_a-zA-Z0-9][[-_a-zA-Z0-9 !"#$%' ()*+,-./:;<=>?@[\\]^_{|}~] ...]
  1018. .br
  1019. String resource values are case-sensitive.
  1020. .SH FILES
  1021. $PBS_HOME/sched_priv is
  1022. the default directory for configuration files.
  1023. $PBS_HOME/sched_priv/holidays is the holidays file.
  1024. .SH SIGNAL HANDLING
  1025. All signals are ignored until the end of the cycle. Most signals are
  1026. handled in the standard UNIX fashion.
  1027. .IP SIGHUP
  1028. This scheduler closes and reopens its log file and rereads its
  1029. configuration file if one exists.
  1030. .IP "SIGALRM, SIGBUS, etc."
  1031. Ignored until end of scheduling cycle. This scheduler quits.
  1032. .IP "SIGINT and SIGTERM"
  1033. This scheduler closes its log file and shuts down.
  1034. .LP
  1035. .SH EXIT STATUS
  1036. Zero upon normal termination.
  1037. .SH SEE ALSO
  1038. The
  1039. .B PBS Professional Administrator's Guide,
  1040. pbs_server(8B), pbs_mom(8B)