You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/installation.md
+23-21Lines changed: 23 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Install HiGHS
2
2
3
-
## Compile from source
3
+
## Compile from source
4
4
5
5
HiGHS uses CMake as build system, and requires at least version
6
6
3.15. Details about building from source using CMake can be found in `HiGHS/cmake/README.md`.
@@ -11,62 +11,64 @@ HiGHS does not have any external dependencies, however, the new interior point s
11
11
12
12
#### BLAS
13
13
14
-
On Linux, libblas and libopenblas are supported. We recomment libopenblas for its better performance. Install with
14
+
On Linux, libblas and libopenblas are supported. We recomment libopenblas for its better performance, and it is found by default if available on the system. Install with
15
15
16
16
```
17
17
sudo apt update
18
18
sudo apt install libopenblas-dev
19
19
```
20
20
21
-
On MacOS no BLAS installation is required because HiPO uses [Apple Accelerate](https://developer.apple.com/accelerate/).
21
+
On MacOS no BLAS installation is required because HiPO uses [Apple Accelerate](https://developer.apple.com/accelerate/) by default.
22
22
23
-
On Windows, OpenBLAS is required. It could be installed via [vcpkg](https://learn.microsoft.com/en-us/vcpkg/get_started/overview) with
23
+
On Windows, OpenBLAS is required. It could be installed via [vcpkg](https://learn.microsoft.com/en-us/vcpkg/get_started/overview) with
24
24
25
25
```
26
26
vcpkg install openblas[threads]
27
27
```
28
28
Note, that `[threads]` is required for HiPO.
29
29
30
+
To specify explicitly which BLAS vendor to look for, `BLA_VENDOR` coud be set in CMake, e.g. `-DBLA_VENDOR=Apple` or `-DBLA_VENDOR=OpenBLAS`. Alternatively, to specify which BLAS library to use, set `BLAS_LIBRARIES` to the full path of the library e.g. `-DBLAS_LIBRARIES=/path_to/libopenblas.so`.
31
+
30
32
#### Metis
31
-
There are some known issues with Metis so the recommented version is in [this fork](https://github.com/galabovaa/METIS/tree/510-ts), branch 510-ts. This is version 5.10 with several patches for more reliable build and execution. Clone the repository with
33
+
There are some known issues with Metis so the recommented version is in [this fork](https://github.com/galabovaa/METIS/tree/510-ts), branch 510-ts. This is version 5.10 with several patches for more reliable build and execution. Clone the repository with
32
34
```
33
35
git clone https://github.com/galabovaa/METIS.git
34
36
cd METIS
35
37
git checkout 510-ts
36
38
```
37
39
38
-
Then build with
40
+
Then build with
39
41
```
40
42
cmake -S. -B build
41
43
-DGKLIB_PATH=/path_to_METIS_repo/GKlib
42
-
-DCMAKE_INSTALL_PREFIX=path_to_installs_dir
44
+
-DCMAKE_INSTALL_PREFIX=path_to_installs_dir
43
45
cmake --build build
44
-
cmake --install build
46
+
cmake --install build
45
47
```
46
48
47
-
On Windows, do not forget to specify configuration type
49
+
On Windows, do not forget to specify configuration type
On Windows, you also need to specify the path to OpenBLAS. If it was installed with vcpkg as suggested above, add the path to `vcpkg.cmake` to the CMake flags, e.g.
Alternatively, building with Bazel is supported for Bazel-based projects. To build HiGHS, from the root directory, run
67
+
Alternatively, building with Bazel is supported for Bazel-based projects. To build HiGHS, from the root directory, run
66
68
67
69
```
68
70
bazel build //...
69
-
```
71
+
```
70
72
71
73
## Install via a package manager
72
74
@@ -105,7 +107,7 @@ filename.
105
107
106
108
## [Building HiGHS with NVidia GPU support](@id gpu-build)
107
109
108
-
HiGHS must be built, from the root directory, with
110
+
HiGHS must be built, from the root directory, with
109
111
110
112
```
111
113
cmake -S. -Bbuild -DCUPDLP_GPU=ON
@@ -117,21 +119,21 @@ This uses [FindCUDAToolkit](https://cmake.org/cmake/help/latest/module/FindCUDAT
117
119
118
120
#### Find CUDA
119
121
120
-
If CUDA is not found automatically, there is an extra option `-DCUPDLP_FIND_CUDA=ON`, to be used with `-DCUPDLP_GPU=ON`, which instead uses `cuPDLP-C`'s `FindCUDAConf.cmake`.
122
+
If CUDA is not found automatically, there is an extra option `-DCUPDLP_FIND_CUDA=ON`, to be used with `-DCUPDLP_GPU=ON`, which instead uses `cuPDLP-C`'s `FindCUDAConf.cmake`.
121
123
122
-
This requires the environment variable `CUDA_HOME` to be set to the directory with the CUDA installation. Having set this, run
124
+
This requires the environment variable `CUDA_HOME` to be set to the directory with the CUDA installation. Having set this, run
0 commit comments