Document revision date: 19 July 1999 | |
Previous | Contents | Index |
To see the characteristics defined on a system, enter SHOW QUEUE/CHARACTERISTICS.
$ SHOW QUEUE/CHARACTERISTICS Characteristic name Number ------------------- ------ EAST 1 WEST 2 NORTH 3 SOUTH 4 |
No characteristics are assigned to a queue by default. To assign characteristics to a queue, include the /CHARACTERISTICS qualifier with INITIALIZE/QUEUE, START/QUEUE, or SET QUEUE.
$ SET QUEUE/CHARACTERISTICS=(EAST) LN03_1 |
To determine the characteristics defined for a queue, enter SHOW QUEUE/FULL.
$ SHOW QUEUE/FULL LN03_1 Printer queue LN03_1, idle, on HERA::TTA3, mounted form DEFAULT <Printer queue on node HERA for an LN03 printer> /BASE_PRIORITY=4 /CHAR=(1) /DEFAULT=(FLAG=ONE,FORM=LN03$PORTRAIT (stock=DEFAULT)) /LIBRARY=LN03LIBRARY Lowercase /OWNER=[SYSTEM] /PROCESSOR=LATSYM /PROTECTION=(S:M,O:D,G:R,W:R) /SEPARATE=(RESET=(ANSI$RESET)) |
To cancel characteristics assigned to a queue, specify the
/NOCHARACTERISTICS qualifier with INITIALIZE/QUEUE, START/QUEUE, or SET
QUEUE.
13.6.3.6 Deleting Characteristics
To delete a characteristic definition, enter DELETE/CHARACTERISTIC. You must specify the characteristic-name with DELETE/CHARACTERISTIC.
If you know the number assigned to the characteristic but do not know the name, enter SHOW QUEUE/CHARACTERISTICS to display the names and numbers assigned to characteristics on the system.
If the system displays the following messages, a queue or job refers to the characteristic:
%DELETE-E-NOTDELETED, error deleting characteristic -JBC-E-REFERENCED, existing references prevent deletion |
You must remove all references to the characteristic before you can
delete the characteristic. For information about removing references to
a characteristic, see Section 13.8.5.
13.6.4 Specifying Batch Processing Options
You can use queue options to control batch job performance and the use of system resources by processes executing batch jobs.
Use the following qualifiers with INITIALIZE/QUEUE, START/QUEUE, or SET QUEUE to set these queue options:
Qualifier | Description |
---|---|
/JOB_LIMIT= n | Specifies the number of jobs that can execute concurrently in the queue. |
/[NO]DISABLE_SWAPPING | Specifies whether the processes running jobs on the queue can be swapped in and out of memory. |
/CPUDEFAULT= time | Specifies the default CPU time limit for all jobs in the queue. The time cannot exceed the time limit set with the /CPUMAXIMUM qualifier. |
/CPUMAXIMUM= time | Specifies the maximum CPU time limit for all jobs in the queue. |
Although the following qualifiers are not specific to batch queues, they are commonly used to control batch job performance and the use of system resources by batch processes:
Option | Description |
---|---|
/BASE_PRIORITY= n | Specifies the base process priority at which jobs are initiated from a batch queue. |
/WSDEFAULT= n | Specifies the default working set size for jobs executed in a batch queue. (For output queues, specifies the default working set size for symbiont processes.) |
/WSEXTENT= n | Specifies the working set extent for jobs executed in a batch queue. (For output queues, specifies the working set extent for symbiont processes.) |
/WSQUOTA= n | Specifies the working set quota for jobs executed in a batch queue. (For output queues, specifies the working set quota for symbiont processes.) |
For more information about these limits, quotas, and priorities, refer to the following manuals:
By default, a process running a batch job uses values taken from the UAF record of the user submitting the job or from system parameter settings. If you specify values for any of these options, processes for jobs executed in the queue will use the values you set unless the user specifies values when the job is submitted. (A user can specify values for CPU time and for the working set options default, quota, and extent.)
A user-specified value cannot exceed the value you set for the queue. If you did not specify a value, the user-specified value cannot exceed the value specified in the associated UAF limit or system parameter.
The following sections provide guidelines for choosing values for these options:
Option | For More Information |
---|---|
Base process priority | Section 13.6.4.1 |
Job limit | Section 13.6.4.2 |
Working set default, quota, and extent | Section 13.6.4.3 |
CPU default and maximum | Section 13.6.4.4 |
Swapping | Section 13.6.4.5 |
Options for memory-constrained systems | Section 13.6.4.6 |
Optimizing for the Sort/Merge utility | Section 13.6.4.7 |
Choose a value based on how quickly you will allow batch jobs to progress. If you choose a value equal to the system parameter value DEFPRI (typically 4), jobs in this queue will progress at the same rate as typical interactive jobs. This choice might be appropriate for systems that have an abundance of available CPU time.
If you choose a value less than DEFPRI, jobs in this queue will potentially progress more slowly than the typical interactive job. CPU time will be allocated to jobs in this queue only after servicing jobs of DEFPRI priority.
If a queue is defined for a very special purpose---for example,
high-priority jobs---a value greater than DEFPRI (for example, 5) might
be appropriate. However, this choice can have a significant negative
effect on the performance of other users and batch jobs.
13.6.4.2 Job Limit
Keep this value low when using a base process priority of DEFPRI or
greater, because each batch job can affect the performance of
interactive jobs.
13.6.4.3 Working Set Default, Quota, and Extent
If you do not specify values for these options, a job uses the value specified in its owner's user authorization file (UAF) record.
In general, the working set quota and extent values specified in the UAF record for each user are sufficient. However, you can specify more generous or stringent values for a queue, depending on the purpose of the queue. For example, you can encourage users to submit large jobs (such as compiling and linking large programs) as batch jobs to reserve interactive use of the system for jobs that do not require extensive resources, as follows:
You can restrict and expand the amount of time a job is allowed in the CPU by setting CPU limit values.
Do not set CPU time limit values too low. When a job's CPU time limit is exceeded, the job is terminated with an error status. If working set values (explained in Section 13.6.4.3) are set too low, the system might use memory less efficiently but the jobs can still complete normally. However, if CPU time limit values are set too low, the system might terminate jobs that are making legitimate and authorized use of the CPU.
For example, you might use a CPU time limit on a batch queue devoted to execution of newly coded software that could unexpectedly enter a CPU loop. The CPU time limit would terminate infinitely looping jobs so they do not waste the CPU resource. However, you must be careful to choose a sufficiently high time limit so normally executing jobs do not terminate prematurely.
Another way to control allocation of the CPU resource is to create a
special-purpose batch queue that shifts execution of its jobs to a less
busy time of day when CPU time is more available.
13.6.4.5 Swapping
Typically, swapping is enabled on batch queues. However, for a special-purpose, high-priority queue, you might disable swapping. This provides a favorable status to jobs in this queue by removing them from consideration when memory must be reclaimed from processes (through the operating system's swapping and trimming mechanism).
For more information, refer to the OpenVMS Performance Management.
13.6.4.6 Options for Memory-Constrained Systems
On memory-constrained systems, total the pages required for the batch working sets on all batch queues. Also make sure that enough fluid memory remains for interactive jobs.
Fluid memory can be reassigned from one process to another through
swapping and paging. (You can calculate fluid memory as the space that
remains when you subtract the number of pages permanently allocated to
the operating system from the total memory. To obtain these values,
enter SHOW MEMORY.)
13.6.4.7 Optimizing Batch Queues for the Sort/Merge Utility
You can improve the efficiency of the OpenVMS Sort/Merge utility (SORT/MERGE) by designating one batch queue for sorting jobs and giving this queue a very large working set quota.
You can also set process quotas for greatest SORT efficiency. The values recommended here are based solely on SORT considerations; you should integrate other system considerations with these to determine appropriate values.
The queue manager uses the following criteria to determine the scheduling order for batch and print jobs that are eligible for processing:
To specify job scheduling options, follow these steps:
Commands for Job Scheduling Options
Use the following commands to specify job scheduling options:
Command | Description |
---|---|
INITIALIZE/QUEUE/SCHEDULE=[NO]SIZE
START/QUEUE/SCHEDULE=[NO]SIZE SET QUEUE/SCHEDULE=[NO]SIZE |
Specifies whether pending jobs in an output execution queue are scheduled for printing based on the size of the job. (Shorter jobs print before longer ones.) |
INITIALIZE/QUEUE/[NO]BLOCK_LIMIT=([lowlim,]uplim)
START/QUEUE/[NO]BLOCK_LIMIT=([lowlim,]uplim) SET QUEUE/[NO]BLOCK_LIMIT=([lowlim,]uplim) |
Limits the size of print jobs that can be processed on an output execution queue. |
PRINT/PRIORITY=n
SUBMIT/PRIORITY=n SET ENTRY/PRIORITY=n |
Specifies the job scheduling priority of the print job. The value of n can be from 0 through 255, where 0 is the lowest priority and 255 is the highest. |
The sections explain how to set job printing priorities and sizes.
How to Prioritize Jobs by Size
To prioritize jobs based on their sizes, use the /SCHEDULE=SIZE qualifier with INITIALIZE/QUEUE, START/QUEUE, or SET QUEUE. (The /SCHEDULE=NOSIZE qualifier prints jobs in the order they were submitted, regardless of size.)
In the following example, /SCHEDULE=SIZE (the default), causes short jobs to print before longer ones on the print queue LPA0_PRINT:
$ INITIALIZE/QUEUE/SCHEDULE=SIZE LPA0_PRINT |
If you enter this command while pending jobs are in any queue, its effect on future jobs is unpredictable.
To limit the size of print jobs, use the /BLOCK_LIMIT qualifier with INITIALIZE/QUEUE, START/QUEUE, or SET QUEUE. By default, printer and terminal queues are created with no block limit, so jobs of any size will be printed. You can specify only an upper limit or both upper and lower limits.
In the following example, LPB0_PRINT has a block size limit of 50, indicating that this queue is reserved for jobs smaller than 51 blocks.
$ INITIALIZE/QUEUE/BLOCK_LIMIT=50 LPB0_PRINT |
You might also want to limit the size of jobs during certain hours of
the day. You can submit a batch job that runs a command procedure to
set a maximum block limit of 500 blocks for a queue at 8:00 a.m. The
command procedure might resubmit itself and remove the block limit
after 5:00 p.m. each day. This lets users print jobs of any size after
normal work hours, when the printing work load is lighter. Users can
specify the /AFTER qualifier with the PRINT command to specify that a
job is to be printed after a specific time.
13.6.5.2 Changing the Scheduling Priority of a Job
If a batch or print job cannot be processed, it is placed in a pending state and is not processed until the cause of the pending state is resolved. For more information, see Section 13.8.2.
To change the scheduling priority of a job, use the /PRIORITY qualifier with SET ENTRY in the following format:
SET ENTRY/PRIORITY=n entry-number |
The following example changes the scheduling priority of a job to 50:
$ SET ENTRY/PRIORITY=50 1131 |
Do not confuse the job scheduling priority with the base process
priority on a queue. The job scheduling priority value must be in a
range of 0 through 255, where 0 is the lowest priority and 255 is the
highest. The default value for /PRIORITY, which refers to the job
scheduling priority, is the value of the system parameter DEFQUEPRI
(usually set at 100).
13.6.6 Using Banner Pages
Banner pages are specially formatted pages that you can set up for queues, to help identify and separate output jobs when they exit a printer. Banner pages also help identify and separate files within jobs.
Two types of banner pages are:
Most sites use only a subset of the available banner pages at any given time. The following table describes the types of banner pages you can use:
Type | Description | For More Information |
---|---|---|
Job Pages | ||
Flag page | A single page printed before each job. | Figure 13-11 |
Burst page | Two flag pages, divided by a separation (burst) bar, printed before each job. | Figure 13-11 |
Trailer page | A page printed after each job. | Figure 13-13 |
File Pages | ||
Flag page | A single page printed before each file in a job. | Figure 13-12 |
Burst page | Two flag pages, divided by a separation (burst) bar, printed before each file in a job. | Figure 13-12 |
Trailer page | A page printed after each file in a job. | Figure 13-13 |
If you do not need to burst pages of a printer's output---for example, if your printer uses cut sheet paper---avoid the burst page option. Flag pages, or flag and trailer pages, are usually sufficient for identifying the end of a job. |
Table 13-2 describes the information found on job flag pages, file flag pages, job trailer pages, and file trailer pages.
Item | Description |
---|---|
Header bar |
A segmented bar composed of:
For a job flag page: A single-segment bar composed of:
For a file flag page: A three-segment bar composed of:
For a job trailer page: A three-segment bar composed of:
For a file trailer page: A five-segment bar composed of the following elements:
|
Note | A user-specified string of up to 255 characters using the PRINT/NOTE command. |
Identification banner | Includes the user name of the process submitting the job, the job name, and the job number. |
Qualifier phrase (file trailer page only) | Indicates the print, queue, and form qualifiers active when the job was submitted; nonactive qualifiers (except /NORECORD_BLOCKING and /NOFEED) are not included. |
File sentence (file flag and file trailer pages only) |
Indicates the following information:
|
Receipt box (job trailer page only) | Contains the following signoff fields: Received:, Date:, and Operator:. |
Job sentence |
Indicates the following information:
|
Footer bar |
A segmented bar composed of:
For a job flag page: Identical to the job flag header bar except the definition of the system logical name (PSM$ANNOUNCE) is not used as the embedded string. The default text is always used as the embedded string. For a file flag page: Identical to the file flag header bar except that the embedded text string is "Compaq Computer Corporation" followed by the operating system version number. For a job trailer page: Identical to the job flag header bar except the definition of the system logical name (PSM$ANNOUNCE) is not used as the embedded string. For a file trailer page: Identical to the file flag header bar except that the embedded text string is "Compaq Computer Corporation" followed by the operating system version number. |
Ruler (file trailer and job trailer pages only) | A sequence of numbers counting to the end of the form. |
Previous | Next | Contents | Index |
privacy and legal statement | ||
6017PRO_059.HTML |