The idle timeout allows you to set a limit on how long a Compute Server or Cloud job can sit idle before the server kills the job.
Background
Both Gurobi Compute Server and the Instant Cloud are based on Gurobi Remote Services (grb_rs).
Gurobi environments correspond to Compute Server jobs. Each environment opens a connection to the Compute Server, and, as long as the environment is active (not deleted or freed), the connection will stay open and the job will allocate one slot on the Compute Server.
For example, assume someone opens a Gurobi Interactive Shell and starts an optimization run on a Compute Server from it. After the run is completed, the person forgets about it and/or leaves for the day. Without an idle timeout, one slot on the Gurobi Compute Server would stay blocked as long as this Interactive Shell is open.
How do I set the IDLETIMEOUT?
The behavior of this parameter is controlled by settings on the server-side and on the client-side. The purpose is for the server to kill a job when it has sent no commands for a specified period of time.
There are multiple ways to set the timeout. Note that the maximum of the server and the client settings will be used.
- On the client:
- Using the license file, specify IDLETIMEOUT: The value is expressed in seconds. Add a line like this to the license file:
IDLETIMEOUT=600
to set the idle job timeout to 10 minutes. - Using the Gurobi API, set the parameter CSIdleTimeout. Its value is expressed in seconds. Note that you must set this parameter using an empty environment.
- Using the license file, specify IDLETIMEOUT: The value is expressed in seconds. Add a line like this to the license file:
- On the server:
- On your own compute server: Use a grb_rs.cnf file to change the property IDLETIMEOUT. Its value is expressed in seconds.
- On Instant Cloud: In the Instant Cloud Manager settings for a Pool, set the "Idle Job Timeout" to the number of minutes to remain idle before terminating the job.
Also note that if you are using Python (for example in the interactive shell) or Instant Cloud, there is a default client setting of 1800 seconds.
This means that any server or pool setting that is under 30 minutes will be ignored if there is no explicit setting on the client because the client default setting of 30 minutes overrides the server setting.
Further information
Comments
0 comments
Article is closed for comments.