Package: adios2
ADIOS2 : The Adaptable Input Output System version 2This is ADIOS2: The Adaptable Input/Output (I/O) System.ADIOS2 is developed as part of the United States Department of Energy's Exascale Computing Project.
It is a framework for scientific data I/O to publish and subscribe to data when and where required.ADIOS2 transports data as groups of self-describing variables and attributes across different media types (such as files, wide-area-networks, and remote direct memory access) using a common application programming interface for all transport modes.
ADIOS2 can be used on supercomputers, cloud systems, and personal computers.ADIOS2 focuses on:PerformanceI/O scalability in high performance computing (HPC) applications.Adaptabilityunified interfaces to allow for several modes of transport (files, memory-to-memory)Ease of Usetwo-level application programming interface (APIs)Full APIs for HPC applications: C++11, Fortran 90, C 99, Python 2 and 3Simplified High-Level APIs for data analysis: Python 2 and 3, C++11, MatlabIn addition, ADIOS2 APIs are based on:MPIAlthough ADIOS2 is MPI-based, it can also be used in non-MPI serial code.Data GroupsADIOS2 favors a deferred/prefetch/grouped variables transport mode by default to maximize data-per-request ratios.
Sync mode, one variable at a time, is treated as the special case.Data StepsADIOS2 follows the actual production/consumption of data using an I/O “steps” abstraction removing the need to manage extra indexing information.Data EnginesADIOS2 Engine abstraction allows for reusing the APIs for different transport modes removing the need for drastic code changes.DocumentationDocumentation is hosted atreadthedocs.CitingIf you find ADIOS2 useful, please cite ourSoftwareX paper, which also gives a high-level overview to the motivation and goals of ADIOS; complementing the documentation.Getting ADIOS2From source:Install ADIOS2 documentation.
For acmakeconfiguration example seescripts/runconf/runconf.shConda packages:https://anaconda.org/conda-forge/adios2Spack:adios2 packageDocker images: underscripts/dockerOnce ADIOS2 is installed refer to:Linking ADIOS2ReleasesLatest release:v2.10.0-rc1Previous releases:https://github.com/ornladios/ADIOS2/releasesCommunityADIOS2 is an open source project: Questions, discussion, and contributions are welcome. Join us at:Mailing list:adios-ecp@kitware.comGithub Discussions:https://github.com/ornladios/ADIOS2/discussionsReporting BugsIf you find a bug, please open anissue on ADIOS2 github repositoryContributingSee theContributor's Guide to ADIOS 2for instructions on how to contribute.LicenseADIOS2 is licensed under the Apache License v2.0.
See the accompanyingCopyright.txtfor more details.Directory layoutbindings - public application programming interface, API, language bindings (C++11, C, Fortran, Python and Matlab)cmake - Project specific CMake modulesexamples - Simple set of examples in different languagesscripts - Project maintenance and development scriptssource - Internal source code for private componentsadios2 - source directory for the ADIOS2 library to be installed under install-dir/lib/libadios2.utils  - source directory for the binary utilities, to be installed under install-dir/bintesting - Tests usinggtest