FAQ: Octeract Engine on HPC Systems

What is Octeract Engine?

A global MINLP solver built for HPC – a MPI/thread parallel tool/library for mathematical optimization problems with APIs for Python, Julia, C++ and more. [read more]

License Terms and Usage Conditions

Users can obtain free/commercial licenses at https://octeract.com. LRZ does not hold or provide them.
For usage on SuperMUC-NG, offline licenses must be purchased that can be hosted on LRZ license servers.

Getting Started

The Octeract webpage provides extensive documentation and tutorials, we propose to follow them as starting point. Furthermore, the installation package contains examples.

Installation is simple. Download the tarball, unpack it, add bin to PATH and lib/lib64 to LD_LIBRARY_PATH. Ready.
In case of compatibility issues (for instance, higher glibc version dependency), please ask at Octeract for a build for SLES 15.1.

Depending on the mode of operation, and the API used, some environment modules must be loaded additionally, such as gcc or julia.

Getting Help / Documentation

As Octeract Engine is not fully supported at the LRZ, please contact the Octeract support in case of questions concerning the usage of the tool/library and licensing.

Octeract Documentation 
Octeract Support

In case of questions or problems regarding the integration of your Octeract installation on the LRZ cluster systems, or requests concerning the license hosting (SuperMUC-NG), please contact the LRZ Service Desk.

Troubleshooting

  • C++ interface: obscure errors like, for instance,
    api_example.cpp:(.text+0x6f): undefined reference to `octeract::Model::add_variable(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, double, double, octeract::VarType)'
    Solution:
         a) use the latest gcc compilers (currently 10.2.0)
         b) put #define _GLIBCXX_USE_CXX11_ABI 0 in front of any other include in your source file