|
Viewer |
This is the main interface to Distributed OrcaFlex and allows users to submit jobs, pause and cancel jobs, view job progress, and control some client settings. When open, the viewer receives status updates from the server on the current list of pending, running, and completed jobs and active clients. For long job lists, this can consume a significant amount of the server processing time, so avoid keeping many viewers open in this situation. When minimised to the taskbar notification area the viewer disconnects from the server job progress update stream but may still receive job completion notifications.
This page shows all the client machines that the server is aware of, in order of highest priority first.
Full client details can be viewed (and copied to the clipboard) by choosing View client details
from the pop-up menu
Client machine identity. Double-clicking on a client node will expand the node to show each client process on the same machine (double click again to hide the detail). The name of each client comprises the machine name and the process id of that client. The real machine name may be replaced by an alias if that is configured in the server settings.
The version of the Distributed OrcaFlex client software running on that machine.
Total number of processing cores on that machine available to the DOF client(s). If hyper-threading is enabled (it usually is by default) then this is the number of logical cores, not physical cores.
The current number of processors available to the client to run OrcaFlex jobs. This can be temporarily modified from the pop-up menu in the viewer, or fixed by a registry setting on the client
The number of OrcaFlex jobs currently running on that machine.
The availability of that client. See the Client waking.
This is the ranking of that client used by the server program when allocating jobs. Clients are ranked first by priority value (which can be set in the Viewer) – lowest priority value first, and then ordered by the machine speed index (calculated by the client itself) – highest value first.
The available processors and machine priority values for any active client can be set by highlighting the client in the list and then modifying these in the pop-up menu. Setting available processors to None
disables that client. If the number of available processors is set to less than the number of jobs running then the surplus jobs are moved back to the waiting queue for another client to run (most recently started job first).
The machine priority value can be used to alter the ranking of clients if it is not desired to have the fastest machine at the top of the list (for instance to push a slower, but larger capacity server to the top).
There are two view options on this page, active and detailed, that present different levels of information:
Active | The active tab shows only the running and waiting jobs for all users, with a simplified interface to summarise the progress. The order of the jobs depends on their status, running jobs are at the top of the list. |
Detailed | The detailed tab lists all the jobs, both completed and pending, and can be filtered by user and job status. Within the this list, the jobs are also grouped by user and by the batch they were submitted in, and actions can be performed on the whole batch at once. The job orders is fixed by time of submission, and thus will not move when their progress is updated. |
Both lists have the same pop-up menu accessed by right-clicking, but some actions are only available in the detailed tab. Job progress and status are updated by the server at regular intervals, however if the system is busy then these updates may be delayed or skipped to prioritise communication with the processing clients.
Full job details can be viewed and copied to the clip board by selecting View job details
from the pop-up menu. If the node is a batch node, the option will show View batch details
and will show a summary of the selected batch.
Each Distributed OrcaFlex job is identified by its file name.
Identity number for the job, assigned by the server.
Dynamics will not be performed even if dynamics is enabled in the analysis data of the data file. This option can be specified when submitting jobs.
The version of the OrcFxAPI that is being used to run the job. It is important that this version is the same as or higher than the version of OrcaFlex that was used to create the OrcaFlex file. Results may be affected if an older version of the OrcFxAPI is used as it may not support all of the features required by the OrcaFlex file. The version is only displayed once the file is loaded by a client.
This column shows the name of the user who submitted the job to the queue.
Each job has a status, which will be one of:
Each job status is accompanied by an icon to quickly identify it:
Jobs that were cancelled by a user will not be restarted. Jobs that failed due to a licencing problem (e.g. not enough licences available) will be restarted on the next available machine. Jobs with a status of Waiting on #ID
are restart models that are waiting for their parent model, identified by job id, to complete.
This shows either the actual time the job completed or, if it is in brackets, the estimated time to completion. It should be stressed that this is only an estimate and will change if machine loading changes or the job is paused or moved to another machine.
The machine the job is or was most recently running on. Where there is more than one DOF client processes running on the same machine then the machine name also includes the process id on that machine.
Displays the interval in minutes between successive auto-saves.
The information in the status bar at the bottom of the viewer window shows the connection status and version of the server, the total currently available processor count and the potential maximum processor count for all the clients. Running and waiting job counts are also displayed. When the first running job reaches completion an additional Completion rate
item will appear which gives an estimated rate of job completion.
The status icons indicating the totals for each status in the job list. Clicking on one of these icons will take you to the first, and then subsequent jobs of that status in the job list detail view.
The server parameter settings can be viewed from the pop-up context menu in the status bar or by double-clicking the status bar.
OrcaFlex jobs are submitted to Distributed OrcaFlex by clicking the add jobs button on the toolbar or pressing the insert key, which also pops up the submit dialog. From the jobs page, click Add
and select one or more files from a networked drive (OrcaFlex dat or sim files must be on a network drive so that all clients will be able to locate them) and click Open
.
When adding model files from the file browser that are restart analyses, select the include restart parents
check box to automatically include the parent files in your job list. From the submit files form, check respect restart parents
to tell the server to ensure the restart model’s parents are run first, if unchecked they can be run in any order. Restart child models must be .yml variation files.
If skip dynamics
is checked then dynamics will not be performed even if dynamics is enabled in the analysis data of the data file. This option mirrors the OrcaFlex batch processing option with the same name.
These files can be saved to a list file for convenience, by choosing save selected files to list
from the pop-up menu. This list can be used to quickly add the same jobs to the job list in the future.
On the settings page, the following options are available:
Distributed OrcaFlex will attempt to save the current simulation state at this time interval so that if a machine fails another machine can pick up the job from the last simulation saved. A value of 0 will result in no backup saves.
In order to run a simulation, the user must specify the location of the OrcFxAPI.dll that the clients must use – again this must be on a network drive in a location to which all the client machines have access. If this box is left blank then the default OrcFxAPI.dll will be used, this default was specified during installation as a registry setting. The lib64 directory containing the runtime dependencies must sit alongside the OrcFxAPI.dll.
When you have selected all the files, click on the submit button.
If a partially completed simulation file is submitted to the jobs list, Distributed OrcaFlex will complete the simulation.
Jobs can also be submitted by simply dragging them onto the jobs list from Windows Explorer, which will bring up the submit files dialog.
Jobs can be resubmitted to the job queue by selecting the job(s) in the jobs list view and clicking the resubmit button or pressing CTRL+R. The jobs are resubmitted with the same parameters as when they were first submitted.
To cancel a job, select the job(s) and click the cancel jobs button or press the DELETE key.
Pending or running jobs can be paused from the viewer. Select the job(s) then click the pause button, or right-click to show the pop-up menu and select Pause selected jobs
. These jobs will remain paused until you resume them by selecting the same job(s) and clicking the Play button or choosing Resume selected jobs
from the pop-up menu.
A group of jobs can be saved to a list file for convenience, by choosing save selected jobs to list
from the pop-up menu.
When in the detailed jobs list, the above actions can be performed on a whole batch at once. Select the batch and click the corresponding batch action button on the toolbar, or right-click to find it on the pop-up menu. Alternatively, use the following key-press shortcuts:
Batch resubmit | CTRL+ALT+R |
Batch cancel | CTRL+DELETE |
Batch pause | CTRL+ALT+P |
Batch resume | CTRL+ALT+M |
With a job selected, you can view the data file or the simulation file by clicking the relevant button on the toolbar. If AutoSave is enabled then the .sim file may be the partially completed simulation. For this to work, .dat and .sim files should have a file association with OrcaFlex, and must exist for the selected job. An alternative to using the toolbar buttons is to press ENTER or CTRL+ENTER respectively.
Note: | These functions are also available by clicking the right mouse button on a selected job to display the pop-menu. |
A user who has completed jobs in the job list can clear these from the viewer (and the server job list) by clicking this button. This button is only enabled for the current user with jobs at this status, jobs for other users can only be deleted from the viewer running under their user account.
An option to turn on Windows app notifications is available in the toolbar. If this is enabled, Distributed OrcaFlex will send a toast notification when a batch owned by the current user has completed, with a brief summary. This notification will appear even if the viewer is minimised to the taskbar notification area.
The viewer program is started by running the executable DistributedOrcaFlex.exe, from a shortcut on the desktop or Start menu. The default installation will ensure that this is started automatically when a user logs in.
The computer should be running Windows 10 or later and must be connected to a network and have read and write access to an area of file storage common to all of the Distributed OrcaFlex client machines.
The settings for the viewer program are stored in the system registry of the local machine, under the following key:
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Orcina
This key can contain the following entries, some of which are shared by the client program:
Changes to these settings require the viewer program to be restarted to read the new configuration.
See description for the client program’s DOFPort setting.
See description for the client program’s DOFServerAddress setting.
DOFAutoSaveIntervalMins defines default number of minutes between backup saves. The automatic backup save allows any other client to pick up the job if one of the clients fail. The default value is 60 minutes. This can be changed in the viewer when submitting jobs.
DOFDefaultDLLFileName is the full path to the default OrcFxAPI.dll file that should be used to run a job if a DLL file is not specified when submitting jobs. The DLL must be on a network drive that all of the clients can read. The value of this setting is displayed in the Settings
page when submitting jobs.
Alongside the OrcFxAPI.dll file, you must place the lib64 directory which contains the runtime dependencies for OrcFxAPI.dll. Both OrcFxAPI.dll and lib64 are found in your OrcaFlex installation directory, e.g.
C:\Program Files (x86)\Orcina\OrcaFlex\(Undefined variable: Variables. ProgramVersion)\OrcFxAPI\Win64
Client programs can be enabled and disabled by right clicking the OrcaFlex icon in the task bar and selecting the Available processors
menu item. From this menu you can disable the client by selecting None
or enable it by specifying how many processor cores you wish to make available to Distributed OrcaFlex.
If the number of processors cores available is reduced or the client is disabled, then after a short period of time, jobs running on the local machine will be moved back to the waiting queue.