Staging Software Overview

FOCUS uses disk staging both on input and output to increase its farm throughput. In simple terms, this allows us to decouple our analysis from the tape I/O. This means our worker nodes are not idle while we wait for tape mounts and rewinds. Also, since the time to stage a tape full of input or output is less than the analysis time, we can make multiple attempts to read/write a tape. This added efficiency comes at the cost of increased complexity.

In order to make the system as robust as possible, we use a dynamic allocation scheme. In other words, when a phase of the program needs a disk to read or write to, it requests one from a disk server. If no disks are available, the server exits without performing any action. Should this happen the Pass1 software proceeds to access the tape directly. Input and output staging are completely separate, so a given process can do either, both, or none.

Which disks are in use is determined by a simple lock-file mechanism. In the directory ~e831p1/stage_lock is a file stage_disk.lis which lists all the disks available on the host and their allowed uses. Also in this directory are a series of .isl and .osl files which lock disks for a specific use. These files contain some information on the job which has the disk allocated.

The staging software is completely integrated with the InfoFile mechanism which allows staging progress to be monitored via the InfoFile.

Staging Software Description

In almost all cases, the scripts run by CPS run this software. Occassionally something goes wrong and commands must be issued by hand. Issuing any of these commands, except as noted, is stricly limited to Pass1 czars.