NASOQ is a scalable and efficient Quadratic Programming solver that obtains solutions for requested accuracies. LBL is a parallel sparse symmetric indefinite linear solver.
If you have CMake 3.16 or higher and a C++11 compiler, then:
MKL Pardiso or OpenBlas (BLAS), OpenMP and METIS. Cmake handles METIS. If you install OpenBlas in its default location (sudo make install), Cmake will detect it.
METIS is a mandatory dependency in this branch. It can be installed by
sudo aptitude install libmetis-dev
Given that MKL Pardiso or OpenBlas are installed, install NASOQ using following steps:
git clone https://github.com/sympiler/nasoq.git
cd nasoq
cmake -DNASOQ_BLAS_BACKEND=OpenBLAS -DNASOQ_USE_CLAPACK=ON -DCMAKE_BUILD_TYPE=Release -S . -B build
cmake --build build --config Release -j 6
If you install Intel MKL via apt, path/to/intel
is /opt/intel
.
For details, please see the table below.
- Building NASOQ
- What is NASOQ QP Solver's Algorithm?
- What is LBL/SoMod Linear Solver?
- Using NASOQ/LBL in C++
- NASOQ Eigen Interface
- NASOQ Matlab Interface
- Sparse Mathematical Programming Repository
- Sparse Mathematical Programming Format
- NASOQ Benchmark
- Publications
- Citation
- NASOQ Homepage
- NASOQ Documentation
- GitHub
Copyright 2022 Kazem Cheshmi