Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

miser(5)

miser(1)

miser_submit(1)

miser_jinfo(1)

miser_qinfo(1)

miser_move(1)

miser_reset(1)



miser(4)                                                              miser(4)



NAME
     miser - configuration files

DESCRIPTION
     The configuration of the miser(1) Queues defines the resources allocated
     to the miser system. The configuration of miser(1) involves two steps.
     The first is to enumerate all the queues that will be part of the
     miser(1) system, and the second is to define the queues.  The enumeration
     of the queues is done in the miser configuration file.  The definition of
     the queues is done in the queue definition files.

     Every miser(1) system requires that a system queue be defined. The system
     queue definition defines the maximum resources available to any other
     queue's definition.

MISER CONFIGURATION FILE
     The miser configuration file is a list of the queue names and the
     location of each queue definition file.

     QUEUE system /usr/local/miser/config.system
     QUEUE physics /usr/local/miser/config.physics


SUMMARY
     Every miser configuration file must include a definition for the system
     queue. The system queue is identified by the queue name "system".

     Commands are newline terminated, characters following the comment
     delimiter are '#' are ignored, and case matters.

     The valid tokens are

     QUEUE [qname]  [file pathname]
          The queue name is used to identify the queue when using any
          interface to miser. The queue name must be between 1 and 8
          characters long.  The queue name system is used to designate the
          system queue.

QUEUE DEFINITION FILE
     The queue definition file consists of a header specifying the policy of
     the queue, the number of resource segments and the quantum used by the
     queue. If the quantum of any queue is different from the system queue
     quantum, the queue definition file is rejected.

EXAMPLE

     # This queue definition file defines a queue using the policy named
     # "default", has a quantum of 20 seconds, and has 3 elements to the
     # vector definition.  The start and end times of each tuple are in
     # quanta not in seconds.  The first segment defines a resource
     # tuple begining at 00:00 and ending at 00:50 with 50 CPUs and
     # 100 megabytes of memory.



                                                                        Page 1





miser(4)                                                              miser(4)



     # The second segment defines a resource tuple begining 00:51.67
     # and ending at 01:00 with 50 CPUs and 100 megabytes. The third
     # segment defines a resource tuple begining at 01:02.00 and ending
     # at 01:03.33 also with 50 CPUs and 100 megabytes of memory.

     POLICY default
     QUANTUM 20
     NSEG 3

     SEGMENT
     START 0
     END 150
     NCPUS 50
     MEMORY 100m

     SEGMENT
     START 155
     END 185
     NCPUS 50
     MEMORY 100m

     SEGMENT
     START 186
     END 190
     CPU 50
     MEMORY 100m


SUMMARY
     Commands are newline terminated, characters following the comment
     delimiter are '#' are ignored, and case matters.

     Each new segment must begin with the token SEGMENT and must have the
     number of CPUs, memory and wall clock time specified at a minimum.

     The valid tokens are

     POLICY name
          The name of the policy that will be used to schedule applications
          submitted to the queue.  Currently, the only valid policy is named
          "default".

     QUANTUM time
          The size of the quantum. The time is specified in seconds.

     NSEG number
          The number of resource segments.

     SEGMENT
          Defines the beginning of a new segment of the vector definition.





                                                                        Page 2





miser(4)                                                              miser(4)



     START number of quanta from 0
          The number of quanta from 0 (defined to be CTU) that the segment
          begins at.

     END number of quanta from 0
          The number of quanta from 0 (defined to be CTU) that the segment
          ends at.

     NCPUS number of CPUs
          The number of CPUs.

     MEMORY amount of memory
          The amount of memory, specified by an integer followed by an
          optional unit of k for kilobyte, m for megabyte, and g for gigabyte.
          If no unit is specified then the value is treated as byte.


     For all the examples, the machine has 12 CPUs and 160MB memory.

     EXAMPLE 1 A machine dedicated to batch scheduling with one queue, 24
     hours a day. "

     First System Queue must be defined.  The length of the system queue
     defines the maximum duration of any job submitted to the system. For this
     system the maximum duration for any one job can be 48 hours, so the
     system vector is defined to have a duration of 48 hours.

     #The system queue /usr/local/miser/system
     POLICY none # System queue has no policy
     QUANTUM 20  # Default quantum set to 20 seconds
     NSEG 1

     SEGMENT
     NCPUS 12
     MEMORY 160m
     START 0
     END   8640 # Number of quanta (48h*60min*60sec/20)


     Next a user queue needs to be defined.

     #The user queue /usr/local/miser/physics
     POLICY default
     QUANTUM 20  # Default quantum set to 20 seconds
     NSEG 1

     SEGMENT
     NCPUS 12
     MEMORY 160m
     START 0
     END   8640 # Number of quanta (48h*60min*60sec/20)




                                                                        Page 3





miser(4)                                                              miser(4)



     Finally a miser configuration file must be created.

     #MISER config file
     QUEUE system /usr/local/miser/system
     QUEUE physics /usr/local/miser/physics

     EXAMPLE 2 A machine dedicated to batch scheduling, 24 hours a day
     and is shared between two user groups."

     Suppose we have 2 user groups, chemistry and physics. Suppose the
     machine must be divided between them, in a ratio of 66% for physics
     and 33% for chemistry.

     The system queue is identical to the one in EXAMPLE 1.

     #The physics queue /usr/local/miser/physics
     POLICY default
     QUANTUM 20  # Default quantum set to 20 seconds
     NSEG 1

     SEGMENT
     NCPUS 8
     MEMORY 120m
     START 0
     END   8640 # Number of quanta (48h*60min*60sec/20)


     Now the chemistry queue:

     #The chemistry queue /usr/local/miser/chemistry
     POLICY default
     QUANTUM 20  # Default quantum set to 20 seconds
     NSEG 1

     SEGMENT
     NCPUS 4
     MEMORY 40m
     START 0
     END   8640 # Number of quanta (48h*60min*60sec/20)


     To restrict access to each queue, the user groups physics and
     chemistry are created.  The permissions on the physics queue
     definition file are set to execute ONLY for group physics and
     the permissions on the chemistry queue definition are set to
     execute only for group chemistry.

     Finally, the miser configuration file must be created:

     #MISER configuration file
     QUEUE system /usr/local/miser/system
     QUEUE physics /usr/local/miser/physics



                                                                        Page 4





miser(4)                                                              miser(4)



     QUEUE chem /usr/local/miser/chemistry


     EXAMPLE 3 The machine is dedicated to TS in the morning but
     to batch in the evening. The evening is 8pm - 4am and the
     morning is 4am to 8pm."

     This is the same example discussed in
     miser(1).

     First the system queue is defined.

     #System queue
     POLICY none # System queue has no policy
     QUANTUM 20 # Default quantum set to 20 seconds
     NSEG 2

     SEGMENT
     NCPUS 12
     MEMORY 160
     START 0
     END   720 # (4h * 60m * 60s) / 20

     SEGMENT
     NCPUS 12
     MEMORY 160
     START 3600 # 8pm is 20hours from CTU, so (20h * 60m * 60s) / 20
     END  4320


     Next, the batch queue is defined.

     #User queue
     POLICY default
     QUANTUM 20  # Default quantum set to 20 seconds
     NSEG 2

     SEGMENT
     NCPUS 12
     MEMORY 160
     START 0
     END   720 # (4h * 60m * 60s) / 20

     SEGMENT
     NCPUS 12
     MEMORY 160
     START 3600 # 8pm is 20hours from CTU, so (20h * 60m * 60s) / 20
     END  4320







                                                                        Page 5





miser(4)                                                              miser(4)



SEE ALSO
     miser(5), miser(1), miser_submit(1), miser_jinfo(1), miser_qinfo(1),
     miser_move(1), miser_reset(1).




















































                                                                        Page 6



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026