ADIOS Components
The following figure illustrates the different kinds of low-level API components present in ADIOS2. The top-level ADIOS component is the only one "owned" by the application. Since ADIOS uses a factory pattern, all other components, such as IO, variables, and operators, refer to elements inside an ADIOS factory container. These subsidiary elements can interact with system resources through one of the available "engines", such as HDF5 or the native engine based on BP3/BP4.

The above figures are taken from the open access paper by Godoy, Podhorszki, et al.,
ADIOS 2: The Adaptable Input Output System. A framework for high-performance data management
,
which explains the philosophy of the system.
To learn more about this evolving project:
-
Detailed information about the kinds of applications making use of ADIOS2 may be found in the presentation
High-performance I/O Frameworks 101
from the Exascale Computing Project All-Hands Meeting, Houston, TX (2020). - Full documentation is available at Read the Docs.
- ADIOS2 source code can be obtained from GitHub.