Download VAX MP Technical Overview
Transcript
thread preemption under the circumstances that can be considered valid for running the simulator. However to provide additional safety margin RQ_DCTMO can be increased up to 255 seconds. 102 Important: The analysis in this chapter does not take into account timeouts used by the drivers (any of discussed device drivers) during initialization. Therefore, drivers on VAX MP should never be reloaded while multiprocessing is active. Should the need occur to reload the driver, stop secondary processors first (via DCL command STOP /CPU/ALL), reload the driver with only the primary processor active, and then start secondary processors again (with DCL command START /CPU/ALL). Similarly, TQ (MSCP tape) controlled by VMS TUDRIVER can be used without restricting device affinity to the primary processor or practical concerns about IOP thread preemption. TQ controller timeout is defined by symbol TQ_DCTMO in file PDP11_TQ.C(PP) that has value of 120 seconds in the original uniprocessor SIMH version. This value is normally more than adequate to avoid the problem of false early device timeout, but can be further increased up to 255 seconds for an additional safety margin. RL handler currently does not use IOP threads, for this reason its use with VAX MP in multiprocessor mode is strongly discouraged, as RL would significantly degrade multiprocessor performance and responsiveness. Use RQ (MSCP) disks instead of RL. Even though the use of RL on a multiprocessor VAX MP is not advised, it is possible if for some reason is absolutely required, such as perhaps for lightly accessed data disks or if VAX MP is executed in uniprocessor mode, with only one active processor enabled. VMS RL driver uses timeouts of 1 and 5 seconds; we did not analyze if they can all be extended indiscriminately. Current solution is that DL device affinity must be set to the primary processor. Note that some OpenVMS components (such as e.g. MSCP server serving local disks to the cluster and others components 103) perform IO operations on local disks that bypass $QIO interface. However these operations are still executed via EXE$INSIOQ(C) or IOC$INITIATE and therefore will be routed, if necessary, in accordance with device affinity. Therefore disk devices with restricted affinity can be safely used in the system, including being served to other nodes the cluster. RY handler does not use IOP, however it performs IO to in-memory buffer holding floppy disk data, and thus blocking is not a significant issue. VMS DYDRIVER uses a range of timeouts down to 1 second. DYDRIVER does not depend on short timeouts and it would be possible to extend all timeouts on DY device indiscriminately. However the significance of this device is very marginal, therefore our current solution is to have DY device affinity set to the primary processor. 102 With existing DUDRIVER code controller timeout can in practice be increased to even higher value (0xFFFF - 10), however MSCP specification states that no controller should ever return controller timeout value greater than 255. If controller returns 0 (no timeout), DUDRIVER will default to 255 seconds. 103 Including MSCP server, F11 ACP/XQP, volume shadowing, quorum disk monitor, cluster cache, cluster IO to multi-host drives, access to cluster incarnation file. 87