Commit 9d9fc1fa authored by Bowen Wu's avatar Bowen Wu
Browse files

Add readme on installation

parent e5c96d00
# FuzzOpt - Fuzzing LP/ILP Optimization Solvers
## Getting Started
Fuzzing usually takes prolonged time and optimization solvers are demanding in resources.
Therefore, it is desirable to deploy the fuzzing procedure on Euler.
First, we need to install the two optimizers of interest, Cplex and Gurobi.
To install Cplex, go to the download page of Cplex and choose the Linux version and download it to your local laptop.
Then you can copy the `.bin` file to the Euler whichever way you like (e.g., `scp` or FileZilla).
On Euler, execute the `.bin` file by
chmod a+x <filename>
Follow the instructions shown on the screen and when it asks where to install the binary, instead of using its default option, make the installation into your local home directory.
For example, you can specify the installation path as `/cluster/home/<user name>/ibm/ILOG/CPLEX_Studio_Community221/`.
You do not have permission to install in `\opt`.
Once the installation is done, install the Cplex python API by
python /cluster/home/<user name>/ibm/ILOG/CPLEX_Studio_Community221/python/ install
Try if it works by typing `python -c "import cplex"`. If it prints nothing, it works.
Moving on the Gurobi, Euler has Gurobi installed as modules so we only need to load them and install the python API.
For loading,
env2lmod # switch to the new software stack if you haven't
module load gurobi/9.5.1
To install the python API, do
python -m pip install gurobipy
Check if it works -- `python -c "import gurobipy"`.
Now you have all dependencies ready.
Note: you will need to load the Gurobi module every time you log into Euler. To avoid this, add the following line to `.bashrc`, which will load the module automatically.
module load gurobi/9.5.1
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment