Sign inSign up

ornladios/adios2-auto

By ornladios

•Updated about 5 years ago

Automated builds of the ADIOS2 CI Images

Image
0

10K+

ornladios/adios2-auto repository overview

License Documentation

GitHub (pre-)release Spack Version Conda Version

Circle CI Travis CI AppVeyor CI

Coverity Scan Build Status

⁠ADIOS2 : The Adaptable Input Output System version 2

This 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:

  1. Performance I/O scalability in high performance computing (HPC) applications.
  2. Adaptability unified interfaces to allow for several modes of transport (files, memory-to-memory)
  3. Ease of Use two-level application programming interface (APIs)
  • Full APIs for HPC applications: C++11, Fortran 90, C 99, Python 2 and 3
  • Simplified High-Level APIs for data analysis: Python 2 and 3, C++11, Matlab

In addition, ADIOS2 APIs are based on:

  • MPI Although ADIOS2 is MPI-based, it can also be used in non-MPI serial code.

  • Data Groups ADIOS2 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 Steps ADIOS2 follows the actual production/consumption of data using an I/O “steps” abstraction removing the need to manage extra indexing information.

  • Data Engines ADIOS2 Engine abstraction allows for reusing the APIs for different transport modes removing the need for drastic code changes.

⁠Documentation

Documentation is hosted at readthedocs⁠.

⁠Citing

If you find ADIOS2 useful, please cite our SoftwareX paper⁠, which also gives a high-level overview to the motivation and goals of ADIOS; complementing the documentation.

⁠Getting ADIOS2

Once ADIOS2 is installed refer to:

⁠Releases

⁠Reporting Bugs

If you find a bug, please open an issue on ADIOS2 github repository⁠

⁠Contributing

See the Contributor's Guide to ADIOS 2⁠ for instructions on how to contribute.

⁠License

ADIOS2 is licensed under the Apache License v2.0. See the accompanying Copyright.txt⁠ for more details.

⁠Directory layout

  • bindings - public application programming interface, API, language bindings (C++11, C, Fortran, Python and Matlab)

  • cmake - Project specific CMake modules

  • examples - Simple set of examples in different languages

  • scripts - Project maintenance and development scripts

  • source - Internal source code for private components

  • adios2 - 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/bin

  • testing - Tests using gtest⁠

Tag summary

Content type

Image

Digest

Size

423.9 MB

Last updated

about 5 years ago

docker pull ornladios/adios2-auto:el7-gnu8-openmpi-ohpc