Skip to content

Installation

XDiag comes in two flavors: a Julia package for interactive, high-level usage and a C++ library for maximal performance and access to the distributed-memory features. Both share the same API, so the code examples throughout this user guide are given for either language.

Julia library

XDiag can conveniently be installed via the Julia package manager. First, a Julia interpreter needs to be opened from a command line using julia. Then, the "package mode" can be entered by typing ], and XDiag is installed using add XDiag. In summary:

julia> ]
pkg> add XDiag

That's it! No further compilation step is required.

C++ library

The first step in employing the C++ version is to compile the library. The source code can be obtained from GitHub by cloning it using git.

cd /path/to/where/xdiag/should/be
git clone https://github.com/awietek/xdiag.git

The compilation and installation is then performed with CMake.

cd xdiag
cmake -S . -B build
cmake --build build
cmake --install build

By default, the resulting library is installed in the install subdirectory of the source tree. There are various options when compiling, including performance optimizations, HDF5/OpenMP support, and building the distributed library with MPI.

Info

For the full list of prerequisites, compile-time options, the distributed build, and how to compile your application code against XDiag, see the Installation page and the detailed compilation guide.