|
|
Client |
This program runs as a Windows service running jobs allocated by the server as a background process. It should not adversely affect the performance of other programs running on that computer, although if the user is running other processor-intensive foreground programs then these will take priority over the Distributed OrcaFlex jobs running on that client.
The computer should be running a 64 bit version of Windows 10, or later. The computer must be connected to a network and have read and write access to an area of network file storage common to all of the Distributed OrcaFlex client machines. For best performance, we recommend you look at the hardware requirements for OrcaFlex (but disregard the graphics requirement).
During the installation you will be prompted for a set of credentials for the client service to run under. We recommend that you create a new specific user, for example DOFUser
, which can then be used for all installations of the Distributed OrcaFlex client. This user should be created before you begin the installation and only be used for the Distributed OrcaFlex client service.
This user must have the Log on as a Service privilege and have been granted sufficient rights to be able to read and write to the shared areas of the network filing system that jobs may be submitted from, including the location of the default OrcFxAPI.dll and its dependencies in the lib64 directory. Then Log on as a service privilege is normally set by group policy on the domain controller. Using this method it is possible to maintain segregated team network storage areas to which only the Distributed OrcaFlex user has overall access.
The settings for the client 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 viewer program:
Some of the settings refer to %COMMON APPDATA% in file paths. This is the common application data folder, normally C:\ProgramData\. This folder is often hidden by default on Windows.
REG_DWORDDOFPort is the TCP/IP port number that DOF clients use to communicate with the server. If this setting is missing then the default of 53412 will be used.
REG_SZDOFServerAddress is the TCP/IP network address or hostname of the computer running the Distributed OrcaFlex server. This must be set correctly for the clients to locate the server.
REG_DWORDDOFMaxNumberOfJobs specifies the maximum number of processors that DOF can use on this machine. If more than one client is running on the same machine then this number is divided between them. If this setting is missing then the total number of processor cores is used (logical cores if hyper-threading is enabled). The processor count can’t be increased above this amount in the Viewer.
REG_DWORDIf the client machine architecture has processor groups then, by default, the DOF client service will start one client process per group and set the thread affinities accordingly. It will also start one proxy process that collates all the progress messages and other communication with the Distributed OrcaFlex server. You can increase the number of client processes created by assigning a reduced value for this setting. For instance, a 40 core server with 4 processor groups will by default get 4 client processes with 10 threads each, and 1 proxy process. If this registry setting is present with a value of 5, then 8 client processes will be started with 5 threads each, along with the 1 proxy process. Note that there is no effect on the performance of the server as messages from each client process are combined by the dedicated proxy process.
REG_DWORDBy default, the client will start-up enabled. Setting DOFStartClientDisabled to a non-zero value (true) will cause the client to start-up disabled i.e. not accepting jobs. The client can then be enabled in the Viewer when required.
REG_DWORDThe machine priority is used by the scheduler to help sort the clients when allocating jobs. Normally the fastest machine is sorted to the top of the list but if this is not desired (for instance, the preferred client is a large capacity server that happens to have a slower processor) then this setting can be used to alter the sort order. This setting is an integer between 1 and 3, 1 is the highest priority. A default value of 2 is used if this setting is absent. The priority can also be changed from the Viewer.
REG_DWORDThe client can limit the number of simultaneous job load and save operations it performs to limit the peak load on the file system. The minimum value is 1, there is no maximum value but a value greater than the processor count of the client will have no practical effect. By default this value is set to unlimited. Processing threads that are waiting to save are not available to run new jobs. The maximum limit on the number of jobs that can be loaded or saved concurrently is determined by the capacity of the network and file system. The Distributed OrcaFlex system as a whole can be throttled using the server setting FileOperationsThrottle
REG_DWORDBy default, the client writes a log of its activity to %COMMON APPDATA%\orcina\dof\DOFClient.log. This file is limited to 10MB and will automatically rotate when this limit is reached. The logging detail can be limited to error information only by setting DOFLogLevel to 0. When multiple clients are running on the same computer then each client saves its own log, with the machine name and process ID as part of the filename.
In some circumstances, running the Distributed OrcaFlex client as a Windows service is unsuitable, so the ability to run as a normal application has been maintained. Although in this configuration a user must always be logged in for the client to be active.
If you wish to do this, you must first stop and disable the OrcaFlex Client service that the installer configured and start the client each time a user logs in by using the following command:
DOFClient64.exe -RunAsApp
The client will then use the currently logged on user's credentials to access the network.
A client machine can be running lots of client processes, for example if the machine architecture has processor groups, or if DOFMaxThreadCountPerProcess is set. To avoid the Server having to manage many separate client connections from the same computer, an extra proxy
process is started. Each client process on a single computer communicates with the proxy process, which is the single point of contact with the Distributed OrcaFlex server. Messages are then collated and compressed, reducing the communication load.
A Distributed OrcaFlex client will only ever claim one OrcaFlex licence regardless of the number of jobs running on that machine. In addition to this, a user physically sitting at that machine will be able to share the same single licence if running OrcaFlex. If no jobs are running, the client will not claim a licence.
However, if you log into the machine via Windows remote desktop, then a second licence will be required for that user to run OrcaFlex.
An alternative is to use a product like VNC which results in the same licence usage as if you were sitting at the machine, i.e. only one OrcaFlex licence is required for both the user and the client to operate (they are in the same user session).