First Distributed Tuning in the Cloud#
The Gurobi Instant Cloud makes it easy to launch a cluster of machines for distributed tuning. If you already installed a cloud license file for a pool with distributed workers, you can go directly to step 4.
1. Open the Instant Cloud Manager#
Go to cloud.gurobi.com. If you are not logged in, you will be prompted for your credentials. If you do not have an account, please register and contact Gurobi to request an evaluation license.
2. Create a pool with distributed workers#
In the Instant Cloud Manager, go to the ‘Pools’ section and click on the add new pool button:
Then, open the ‘License’ tab and set the number of workers to 2.
Finally, create the new pool. Note that a default name is assigned for you such as pool1.
3. Download the pool license file#
The list of pools is displayed in the Instant Cloud Manager and your license file is ready to be downloaded with the following button.
The license file contains the default access ID and secret key for the selected pool. You just have to place this file in your home directory which takes precedence, or in one of the following shared locations:
C:\gurobi\ on Windows
/opt/gurobi/ on Linux
/Library/gurobi/ on Mac OS X
In case you previously had a license file installed, please make sure to
replace it, or set the environment variable GRB_LICENSE_FILE
to
point to the cloud license file, it will override the default locations.
4. Tune#
You can try to tune a MIP MPS file provided with the Gurobi distribution. Here is an example on Mac OS X:
$grbtune /Library/gurobi1001/macos_universal2/examples/data/misc07.mps
Waiting for cloud server to start...........
Capacity available on '999999-pool1' cloud pool - connecting...
Established HTTPS encrypted connection
grbtune version 10.0.1 build v10.0.1rc0 (mac64[x86])
Copyright (c) 2023, Gurobi Optimization, LLC
Read MPS format model from file /Library/gurobi1001/macos_universal2/examples/data/misc07.mps
Reading time = 0.26 seconds
MISC07: 212 rows, 260 columns, 8619 nonzeros
Distributed tuning: launched 3 distributed worker jobs
Solving model using baseline parameter set with TimeLimit=3600s
Solving with random seed #1 ...
Optimize a model with 212 rows, 260 columns and 8619 nonzeros
Variable types: 1 continuous, 259 integer (0 binary)
[...]
Within this log, we have highlighted in bold some important steps. First, the client automatically connects to the Instant Cloud server and checks for the pool status. As the machines are not launched yet, Instant Cloud starts the machines and the client reports that it is waiting until capacity is available.
Then the Gurobi Optimizer detects that the pool is setup with 2 distributed workers. So it automatically starts the tuning in distributed mode with 3 workers (the master compute server counts as one worker as well).
5. Terminate the pool (optional)#
The machine will auto-terminate once it stayed idle for a duration limit called the idle shutdown. The default idle shutdown is 60 minutes, and it can be changed in the settings of the pools and your preferences. Otherwise, you can terminate the pool manually in the Instant Cloud Manager, by selecting the created pool and clicking on the terminate button.