https://github.com/sandialabs/adct-cxx
Application Data Collection Toolkit for C++
https://github.com/sandialabs/adct-cxx
scr-3171 snl-comp-science-libs snl-data-analysis snl-os-sys-software snl-performance-workflow
Last synced: 4 months ago
JSON representation
Application Data Collection Toolkit for C++
- Host: GitHub
- URL: https://github.com/sandialabs/adct-cxx
- Owner: sandialabs
- License: other
- Created: 2025-11-11T16:33:55.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2026-03-30T00:35:24.000Z (4 months ago)
- Last Synced: 2026-03-30T04:28:12.599Z (4 months ago)
- Topics: scr-3171, snl-comp-science-libs, snl-data-analysis, snl-os-sys-software, snl-performance-workflow
- Language: C++
- Homepage:
- Size: 6.96 MB
- Stars: 1
- Watchers: 0
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# adct-cxx
Application Data Collection Toolkit for C++
- This is a library-only ADC c++ implementation for https://github.com/sandialabs/adct .
- It depends at build time on boost::json headers, but exposes to the
application code only c++17 standard dependencies.
- A single factory class provides interface-only objects.
- Documentation is generated during the build and installed (also available at: https://sandialabs.github.io/adct-cxx/).
- The blt source from https://github.com/LLNL/blt.git is required to build
- check that https\_proxy is set as needed to reach github, if needed.
- see INSTALL.md for a quick install procedure.
This libadc-cxx does or will soon:
- optionally depend on an MPI-capable compiler and MPI library.
- optionally depend on adiak from LLNL.
- optionally depend on libldms from ldms 4.5.1 or later.
- optionally depend on libcurl.
Development of comprehensive tutorial examples and feature tests is on-going.
- The current HPC example is examples/mpiSimpleDemo.cpp
- The primary coverage test is examples/demoBuilder.cpp.
- The current multi_publisher, parallel example is examples/adcHelloWorldMPI.cpp
Example build instructions are provided in scripts build.*:
- MPI
./build.cmake
- No MPI
./build.nompi.cmake
- LDMS / Adiak co-development
./build.cmake.third
The build.\* scripts depend on site specific input parameters (see local-install-list)
that need changing at new sites or for new users.
The build.\* scripts depend on lmod module commands to select compiler tools; these
must be replaced with site-specific alternatives or site-specific \*PATH and
INCLUDE variables.
Code-based documentation is built with doxygen as part of a normal install.
It lands in $prefix/share/doc/adc/adc\_cxx/html/index.html