Cookie Settings
Customize Consent Preferences
This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Other cookies are those that are being identified and have not been classified into any category as yet.

Try our new documentation site (beta).

Filter Content By
Version
Table of contents
Filter by Language
C API Details
C++ API Details
GRBModel +
Java API Details
GRBModel +
.NET API Details
GRBModel +
Python API Details
Model +
Attributes
Parameters
Parameter Descriptions +


Env.ClientEnv()

Env.ClientEnv ( logfilename=””, computeServer=””, router=””, password=””, group=””, CStlsInsecure=0, priority=0, timeout=-1 )

Compute Server Env constructor. Creates a client environment on a compute server. If all compute servers are at capacity, this command will cause a job to be placed in the compute server queue, and the command will return an environment once capacity is available.

Client environments have limited uses in the Python environment. You can use a client environment as an argument to the Model constructor, to indicate that a model should be constructed on a Compute Server, or as an argument to the global read function, to indicate that the result of reading the file should be place on a Compute Server.

This method will also check the current working directory for a file named gurobi.env, and it will attempt to read parameter settings from this file if it exists. The file should be in PRM format (briefly, each line should contain a parameter name, followed by the desired value for that parameter).

In general, you should aim to create a single Gurobi environment in your program, even if you plan to work with multiple models. Reusing one environment is much more efficient than creating and destroying multiple environments. The one exception is if you are writing a multi-threaded program, since environments are not thread safe. In this case, you will need a separate environment for each of your threads.

Arguments:

logfilename: Name of the log file for this environment. Pass an empty string if you don't want a log file.

computeServer: A Compute Server. You can refer to the server using its name or its IP address. If you are using a non-default port, the server name should be followed by the port number (e.g., server1:61000)

router: The router for a Compute Server cluster. A router can be used to improve the robustness of a Compute Server deployment. You should refer to the router using either its name or its IP address. If no router is used (which is the typical case), pass an empty string.

password: The password for gaining access to the specified Compute Server cluster. Pass an empty string if no password is required.

group: The name of the Compute Server group.

CStlsInsecure: Indicates whether to use insecure mode in the TLS (Transport Layer Security). Set this to 0 unless your server administrator tells you otherwise.

priority: The priority of the job. Priorities must be between -100 and 100, with a default value of 0 (by convention). Higher priority jobs are chosen from the server job queue before lower priority jobs. Depending on the configuration of the server, a job with priority 100 runs immediately, bypassing the job queue and ignoring the job limit on the server. You should exercise caution with priority 100 jobs, since they can severely overload a server, which can cause jobs to fail, and in extreme cases can cause the server to crash. This behavior is managed by the HARDJOBLIMIT, and is disabled by default. Refer to the Gurobi Remote Services Reference Manual for more information on starting Compute Server options.

timeout: Queue timeout (in seconds). If the job doesn't reach the front of the queue before the specified timeout, the call will exit with a JOB_REJECTED error. Use -1 to indicate that the call should never timeout.

Return value:

New environment object.

Example usage:

  env = Env.ClientEnv("client.log", "server1.mycompany.com,server2.mycompany.com")
  m = read("misc07.mps", env)
  m.optimize()