Skip to content

Latest commit

 

History

History
62 lines (50 loc) · 1.94 KB

README.md

File metadata and controls

62 lines (50 loc) · 1.94 KB

CI

Equivariant posteriors

Test bed for equivariant posterior project.

Train and evaluate PyTorch models with reproducibility in mind.

  • Computational environment reproducible through Nix flake.
  • Python based configuration in terms of dataclasses.
  • Convenient metric functionality with focus on saving as much as possible for future inspection.
  • Simple TUI for easy progress inspection.
  • Postgres storage with experimental Apache Superset couplings for easy visualization and run tracking.

Nix

This project uses Nix to manage development and runtime dependencies.

Binary cache from Cachix

We provide cached builds of dependencies for a CUDA enabled system through Cachix. See instructions at https://app.cachix.org/cache/equivariant-posteriors#pull.

It is probably also a good idea to enable the CUDA maintainers cache: https://app.cachix.org/cache/cuda-maintainers#pull

Install

Install nix to your home-folder or system wide.

  https://nixos.org/download.html#download-nix

Enable flakes by one of

  1. Nix in other distribution: Create (or add to) ~/.config/nix/nix.conf (or /etc/nix/nix.conf)
      experimental-features = nix-command flakes
    
  2. NixOS: Add to /etc/nixos/configuration.nix
      nix = {
        package = pkgs.nixFlakes;
        extraOptions = ''
          experimental-features = nix-command flakes
        '';
      };
    

Development

Start a development shell

  nix develop

Test project

To build and run tests

  nix build

Build singularity image

Build a singularity image with CUDA support containing the project

  nix build .#sing