Coder Social home page Coder Social logo

jrmaddison / checkpoint_schedules Goto Github PK

View Code? Open in Web Editor NEW

This project forked from firedrakeproject/checkpoint_schedules

0.0 0.0 0.0 980 KB

Schedules for incremental checkpointing of adjoint simulations.

License: GNU Lesser General Public License v3.0

Python 100.00%

checkpoint_schedules's Introduction

checkpoint_schedules

checkpoint_schedules provides schedules for step-based incremental checkpointing of the adjoints to computer models. The schedules contain instructions indicating the sequence of forward and adjoint steps to be executed, and the data storage and retrieval to be performed.

The schedule instructions are independent of the model implementation, which enables the model authors to switch between checkpointing algorithms without recoding their adjoint solvers. Conversely, checkpoint_schedules provides developers of checkpointing algorithms with a direct mechanism to convey their work to model authors.

Installation

checkpoint_schedules is a Python package and can be installed using pip

pip install checkpoint-schedules

Usage

The usage guide of checkpoint_schedules is available here.

Contributing

We welcome contributions to checkpoint_schedules! To contribute please consider the following steps:

  1. Fork the repository.
  2. Make your changes.
  3. Make sure that the tests pass by running pytest test and pytest --nbval-lax docs/notebooks/
  4. Add tests for your changes (if applicable).
  5. Add documentation for your changes that follows the Sphinx format.
  6. Submit your pull request.

Bug reports

Please report bugs on the issue tracker.

Documentation

The complete documentation for checkpoint_schedules is available at Firedrake project website.

License

checkpoint_schedules is licensed under the GNU LGPL version 3. See the LICENSE file for details.

Citation

If you use checkpoint_schedules in your research, please cite this paper DOI.

checkpoint_schedules's People

Contributors

ig-dolci avatar jrmaddison avatar dham avatar danielskatz 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.