sys-sage is a library for capturing and manipulating hardware topology of compute systems.
It is currently under development, so there may be breaking changes in the API in the future.
The documentation is available here.
Please refer to the Installation Guide for more information.
The recommended installation is through spack, alternatively, sys-sage can be built from the sources.
spack install sys-sage
#see "spack info sys-sage" for available options and versions
- cmake (3.22 or newer)
- libxml2 (tested with 2.9.13)
git clone https://github.com/caps-tum/sys-sage.git
cd sys-sage
mkdir build && cd build
cmake ..
# build options:
# -DINTEL_PQOS=ON - builds with Intel CAT functionality. For that, Intel-specific pqos header/library are necessary.
# -DNVIDIA_MIG=ON - Build and install functionality regarding NVidia MIG(multi-instance GPU, ampere or newer).
# -DPROC_CPUINFO=ON - Build and install functionality regarding Linux cpuinfo (only x86) -- default ON.
# -DDATA_SOURCES=ON - builds all data sources from folder 'data-sources' listed below. Data sources are used to collecting HW-related information, so it only makes sense to compile that on the system where the topology information is queried.
# -DDS_HWLOC=ON - builds the hwloc data source for retrieving the CPU topology
# -DDS_MT4g=ON - builds the mt4g data source for retrieving GPU compute and memory topology. If turned on, includes hwloc.
# -DDS_NUMA=ON - builds the caps-numa-benchmark. If turned on, includes Linux-specific libraries.
# -DCMAKE_INSTALL_PREFIX=../inst-dir - to install locally into the git repo folder
make all install
Please refer to the Testing Guide for more information.
sys-sage has been created by Stepan Vanecek (stepan.vanecek@tum.de) and the CAPS TUM. Please contact us in case of questions, bug reporting etc.
sys-sage is available under the Apache-2.0 license. (see License)