Author: eilemann@gmail.com
State:
- Implemented in 0.3
- Improved in 0.4 to use existing --eq-client and --eq-listen parameters
Overview
Resident render clients are used to minimize the time for initializing a configuration. They are pre-launched by an external mechanism, and connected by the server during config initialization. They allow pre-loading of application data and using the same process for multiple configuration 'runs'.
Render Client
The render client has to be started on a known address. Any Equalizer
application, including eqPly
, can be started with
the --eq-listen [description]
option, and it will create a
listening socked using the specified TCP/IP address and port. In addition, the
--eq-client
parameter puts the application into client mode, that
is, eq::Client::initLocal
never returns. Provided with these two
parameters, eqPly
acts as a render client executing one
configuration run. The eqPly
example provides in addition
the -r
option, which overrides the client loop to keep it
running for multiple configuration runs.
Example Options
Pre-start client for one run, with default Equalizer listening port (conflicts with server on the same machine):
./eqPly -- --eq-client
Pre-start client for one run on the address 10.1.1.1, port 4243::
./eqPly -- --eq-client --eq-listen 10.1.1.1:4243
Pre-start client to run 'forever' on the address node1, port 4243::
./eqPly -r -- --eq-client --eq-listen node1:4243
Configuration
Once the render clients have been started, the relevant port have to be used in the node connection section of the configuration file, e.g.:
config { node { connection { hostname "node1" TCPIP_port 4243 } } ... }The server will first try to connect to this address, and only auto-launch the node if the connection fails. If auto-launching the clients is undesired, a launch command which always fails can be configured.