Programs auxiliary to the allsky search of EXPLORER data



Saving backup copies

Despite all normal measures taken to ensure smooth unattended running of the search program sometimes there happen instances of a damage of the control file, jobi*.mat, which may lead to the loss of even a few days of computer work prior to the damage plus the time till the discovery of such a crash.
The program SafeCopy.exe (written in Fortran, which is true also for other two programs described on this page) is a tool intended to regularily save a backup copy of the jobi*.mat file, a working file created periodically by the main search program. In case the file is old or erratic SafeCopy, after restoring the file if necessary, can also restart the main search program.
This small utility is conveniently run with the aid of OS scheduling facility and/or with a batch file. E.g. Windows can be set to run a batch calling this program alone every 2 (faster PCs) to 12 hours (PCs with a slower clock). The program may also be included in another batch that starts the search whenever a PC is reset (i.e. with each start of OS) to make sure that after a power failure or other abrupt reset of the PC the AllSky search program will not find an invalid jobi*.mat file (which would be disastrous). To run the program just issue the following DOS command:
SafeCopy [filename path file_age]
where the 'file_age' is expressed in minutes since the last modification of the 'filename'. If no command line arguments are given they are assumed to be: 'jobi*.mat c:\candidatessi -720'. The program SafeCopy.exe first copies the 'filename' and analyses this temporary file (note that the work on a temporary copy seems safer then with the original which is used also by the main program) to check if
  • it is of correct length (i.e. 352 bytes),
  • it is readable,
  • it has in its header the word 'MATLAB'.
    If all seems OK a new backup copy is saved in the 'path' directory and a counter in the SafeCopy.log file is increased by one. If any of the conditions is not met, the progam repeats the checking a number of times (currently set to 15) and if the erratic condition persists, it finally substitutes 'filename' with a previously copied version.
    When restoration from the backup copy takes place, this program appends a separate info line to the log file. In this case, and also if the 'filename' seems correct but has been created more than 'file_age' minutes ago, the program checks if the main AllSky search program (a job*.exe) is running. To this end it calls the following DOS command: 'pv -u -q job* > pv--tmp.log' (the pv command executes a process viewer utility PrcView, v 3.5.1.12b), and then searches thus created .log file for a process whose name begins with 'JOB'. The absence of such a process means the main program is not running so a batch named 'RunJob.bat' may be executed, if desired, and a record added to the log file. For nondedicated PCs the absence of JOB* process may indicate an intentional state of affairs (a user might have stopped it to run some more demanding program, e.g. a game) and automatic restart would then be unwelcome. Therefore there is a possibility to switch off the option of restarting the main program; this is done by setting a negative value for the command line parameter 'file_age'.
    There is another use of the mentioned freeware utility, the PrcViewer. If our search program is run as a background process it considerably slows down other applications which may be annoying for users of PCs with clocks below say 1 GHz. The remedy lies in setting a lower priority for our program, unfortunately not all OS allow for this. The PrcViewer can do this for us even under Windows 98. Again, the priority change (usually from 'Normal' to 'Idle') can accompany each start of the search program.

    Plotting progress maps

    The executable Progress.exe plots progress of computing in the AllSky search based on numerical data in the files 'jobiasci.dat' and 'jobiascS.dat' (containing data for northern and southern sky hemisphere, respectively). These .dat files consist of tabular information on starting and current (m,n) point being analysed by each of the computers employed in the search. All points between these two are transformed into sky coordinates (declination and right ascension or galactic latitude and longitude) and are plotted on a planar projection of the celestial sphere. The plots made for chosen projection are output into two postscript format files, one for each hemisphere. Thus the program must be executed twice to obtain two plots in each of the two coordinate frames (equatorial and galactic). An output plot may look like this:


    These postscript files are then converted (outside of the discussed program, e.g. with the GSView postscript viewer) to a binary format and later merged with corresponding sky maps. These mergers are presented on our main page and here.

    Analysing PC performance in AllSky search

    The program PC-ty.exe plots progress and performance of computing in the AllSky search for individual PCs: cell number and speed versus time. Detections groupped at the same time (due to DOS time stamp of a file being given with 1 minute resolution) can be depicted as error bars proportional to number of detections. These drawings are based on analysis of DOS listings of files ss*.mat from the 'candidatessi' directory. Up to 10 list files, one file per PC, can be supplied for analysis in one run upon prompting by this program with results presented on one plot, each PC data in different color. For speed determination the listing should preferably be ordered in time. If simple DOS command 'dir ss*>file.lst' not suffices the user may try 'dir ss*|sort /+29 >file.lst' (perhaps a little editing will be still needed, however it is not absolutely necessary). The plot in PostScript format is placed in a file named after the name of the last list file analysed (any extension being replaced by .ps).
    The program options are:
  • Scale - the size of postscript output figure is multiplied by this value (a negative value means portrait orientation of the output).
  • Days - draw speed averaged over at least this interval in days; no speed plot is drawn if nonpositive value is entered.
  • mDet - if set to > 0 the program draws number of multiple detections (as error-like bars); set to 0 for continuous line plot and >1 for the postscript symbol number (e.g. 264 for x).
    The program starts with Scale, Days and mDet set to 1.000, 1.0 and 0, respectively.
    When a quick lookup of a single PC is desired, one may conveniently use the mouse to drag and drop the .lst file onto the PC-ty.exe in Windows explorer and then press a few times the ENTER key to accept the options suggested.
    In addition to the graphs the .ps file contains also numerical summary of total number of sky cells analysed, candidate signals found and time span over which the analysis was performed. Further, for each of PCs the highest signal to noise ratio, highest speed of computation and efficiency of computer power usage (i.e. average speed expressed in percents of the highest speed) is given.


    The above figure is an example of a plot drawn with Scale=0.75, Days=1 and mDet=1, and made for two PCs employed during search on the (already finished) northern hemisphere. One of the PCs is an Athlon 1333 MHz (shown in red), on which the search was run as a background process during normal daily usage of the PC, and the other, a dedicated one shown in blue, is a Pentium IV 1700 MHz. One can easily appreciate the striking differences in performance. Note however also that the maximum speeds achieved in this example are roughly proportional to the processor clocks. In fact all the analysis carried out with this program should be taken rather lightly since it does not take into account computation time before the first detected candidate nor after the last one. Furthermore any possible clock jumps would distort the speed estimates.