Client Configuration


Client Configuration

Compute Server clients must know how to reach the desired servers. You have a few options for providing this information. Your first is through the client gurobi.lic file. That file should contain a line like the following:

COMPUTESERVER=server1.mydomain.com,server2.mydomain.com
You can create this license file yourself, using your favorite text editor (Notepad is a good choice on Windows). You simply need to provide a list of the names of the machines that are acting as Compute Servers. You can refer to the Compute Server machines using their names (e.g., server.mydomain.com) or their IP addresses (e.g., 192.168.1.100).

Your client license file may optionally specify a few additional pieces of information. The first is the Compute Server password:

PASSWORD=abcd
This should match the password that you chose when you started the Compute Server. The second is the job priority:
PRIORITY=10
As you might expect, higher priority jobs take precedence over lower priority jobs. Priorities will be discussed in more detail shortly. The third is the queuing timeout:
TIMEOUT=60
A job that has been sitting in queue for longer than the specified TIMEOUT value (in seconds) will return with a JOB_REJECTED error.

Your second option for specifying the desired Compute Servers is through API calls. The appropriate call depends on your programming language. From C, you would call GRBloadclientenv. From our object-oriented interfaces, the GRBEnv constructors each provide a signature that allows you to specify the compute server(s), the compute server password, the job priority, and a timeout for jobs submitted by that program.

Your final option for specifying the desired Computes Servers is specific to the Gurobi command-line tool. The --server= or --servers= argument allows you to provide a comma-separated list of Compute Servers (and the optional --password argument allows you to specify the user password):

> gurobi_cl --servers=server1,server2 --password=password1 misc07.mps