RE: VMS process priorities and system processes

From: Main, Kerry (kerry.main_at_hp.com)
Date: 07/16/05


Date: Sat, 16 Jul 2005 16:12:05 -0400


> -----Original Message-----
> From: Albrecht Schlosser [mailto:ajs856@tiscali.de]
> Sent: July 15, 2005 6:55 AM
> To: Info-VAX@Mvb.Saic.Com
> Subject: VMS process priorities and system processes
>
> Hi,
>
> I'm looking for a way to give some application and server
> processes different
> priorities:
>
> highest: some server processes
> high : some other server processes
> medium : some communication processes
> low : some other processes
> lowest : client processes
>
> This would result in a process priority "window" of 5
> different priorities.
> These priorities should all be higher than normal
> (interactive) user priorities,
> which are by default 4. Batch priorities are still lower
> (from 1 to 3).
>
> What I'm concerned about: if I would use priorities 5-9 (or
> higher), then some
> processes would have higher priorities than some system
> processes, as can be
> seen here (from a running OpenVMS Itanium 8.2 system):
>
> process name state username pri/bpri image
> ------------------------------------------------------------------
> OPCOM HIB SYSTEM 8/ 6 OPCOM
> ERRFMT HIB SYSTEM 8/ 7 ERRFMT
> AUDIT_SERVER HIB AUDIT$SERV 10/ 8 AUDIT_SERVER
> TCPIP$INETACP HIB INTERNET 10/ 8 TCPIP$INETACP
> IPCACP HIB SYSTEM 10/ 8 IPCACP
> TP_SERVER HIB SYSTEM 10/ 8 TPSERV
> QUEUE_MANAGER HIB SYSTEM 10/ 8 QMAN$QUEUE_MANAGE
> SECURITY_SERVER HIB SYSTEM 10/ 8 SECURITY_SERVER
> JOB_CONTROL HIB SYSTEM 9/ 8 JBC$JOB_CONTROL
> TCPIP$FTP_1 LEF TCPIP$FTP 10/ 8 TCPIP$FTP_SERVER
> LATACP HIB SYSTEM 14/12 LATACP
> LANACP HIB SYSTEM 14/12 LANACP
> SWAPPER HIB SYSTEM 16/16
>
> I think that realtime priorities would not be needed, but
> what about all these
> processes with (base) priorities from 6 to 8, e.g.
> TCPIP$INETACP, IPCACP, or
> TPSERV. I would prefer to give lower priorities to the
> application processes
> than to these system processes, but the "window" from 4 to 6
> is too small.
>
> What do you do WRT process priorities? Raise system process
> priorities? What
> should be done (or not be done) to keep a stable and
> responsive system?
>
> Additional background information: Of course, the high
> priority server processes
> are tested well and stable, but some other processes might
> come into a CPU loop
> or similar (e.g. once there was a process with a read timeout
> of 0 seconds,
> which came from a (missing) user input timeout value :-( ).
>
> In such cases a system manager should still be able to log in
> and suspend/stop
> such bad behaving processes. And network activities (many
> processes connect via
> TCPIP services) should never be blocked by other processes.
>
> Any suggestions what to do?
>
> Regards
>
> Albrecht
>

It would appear that you want to ensure some processes of the same
priority do not impact other processese e.g. process runaway stuff.

As others have stated, you can get into trouble by purposely mixing
priorities on specific priorities.

As a suggestion, I would suggest you consider using the OpenVMS class
scheduler to do this.

Reference:
Sysman> Help class

http://h71000.www7.hp.com/doc/732FINAL/6048/6048pro_005.html#startsubcom
mand_431
"The class scheduler provides the ability to limit the amount of CPU
time that a system's users receive by placing users in scheduling
classes. Each class is assigned a percentage of the overall system CPU
time. As the system runs, the combined set of users in a class is
limited to the percentage of CPU execution time allocated to their
class.

Users might get some additional CPU time if the qualifier /WINDFALL is
enabled for their scheduling class. Enabling the qualifier /WINDFALL
allows the system to give a small amount of CPU time to a scheduling
class when the scheduling class's allotted time has been depleted, but a
free CPU is available."

Regards

Kerry Main
Senior Consultant
HP Services Canada
Voice: 613-592-4660
Fax: 613-591-4477
kerryDOTmainAThpDOTcom
(remove the DOT's and AT)

OpenVMS - the secure, multi-site OS that just works.