Coder Social home page Coder Social logo

longervisionusa / adios2 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ornladios/adios2

0.0 0.0 0.0 26.84 MB

Next generation of ADIOS developed in the Exascale Computing Program

Home Page: https://adios2.readthedocs.io/en/latest/index.html

License: Apache License 2.0

Shell 1.02% C++ 70.97% Python 2.53% C 9.06% Fortran 7.06% Tcl 0.01% MATLAB 0.30% PowerShell 0.10% Cuda 0.02% Makefile 0.09% CMake 8.39% Dockerfile 0.44% Roff 0.01%

adios2's Introduction

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

adios2's People

Contributors

jasonruonanwang avatar eisenhauer avatar williamfgc avatar pnorbert avatar guj avatar bradking avatar germasch avatar philip-davis avatar lwan86 avatar kylefromkitware avatar dmitry-ganyushin avatar nathompson avatar anagainaru avatar keichi avatar godoywf avatar scottwittenburg avatar caitlinross avatar ax3l avatar vicentebolea avatar shawnyang610 avatar khuck avatar aronhelser avatar eschnett avatar brtnfld avatar dependabot[bot] avatar qliu21 avatar kwrobot avatar jieyangchen7 avatar stevenwalton avatar jychoi-hpc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.