Skip to content

Latest commit

 

History

History
64 lines (49 loc) · 2.18 KB

CONTRIBUTING.md

File metadata and controls

64 lines (49 loc) · 2.18 KB

Guideline for Code Contributions

  • Use the OneFlow model of development:
    • Both new features and bug fixes should be developed in branches based on master.
    • Hotfixes (critical bugs that need to be released fast) should be developed in a branch based on the latest tagged release.

Installation

NVIDIA Drivers

For matching NVIDIA drivers to particular CUDA versions, see CUDA Toolkit and Compatible Driver Versions. Which GPUs are supported by the latest NVIDIA drivers and how to install the latest driver on Ubuntu 18.04.

$ sudo ubuntu-drivers devices
$ sudo ubuntu-drivers autoinstall
$ sudo apt install cuda-drivers-fabricmanager-455
$ sudo systemctl unmask nvidia-fabricmanager
$ sudo systemctl enable nvidia-fabricmanager

Python distro

$ wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh
$ bash Mambaforge-Linux-x86_64.sh -b -p $HOME/software/pkg/miniforge3pic
$ mkdir -p $HOME/MyModules/miniforge3pic
$ cd $HOME/MyModules/miniforge3pic
$ wget https://raw.githubusercontent.com/CHPC-UofU/anaconda-modules/master/miniconda3/latest.lua
# change myanapath to software/pkg/miniforge3pic inside latest.lua
# ~/custom.sh
#!/bin/bash

module use $HOME/MyModules
module load miniforge3pic/latest

Dependencies

$ git clone git@github.com:berceanu/fbpic.git
$ cd fbpic/
$ git checkout dev
$ git remote add upstream https://github.com/fbpic/fbpic.git
$ git checkout dev
$ git pull --ff-only upstream dev
$ git push origin dev
$ source ~/custom.sh
$ mamba install -c conda-forge six wheel fastrlock python-dateutil unyt numba scipy matplotlib pandas h5py openpmd-api mkl cupy pyopencl ocl-icd-system mpi4py signac signac-flow signac-dashboard pylint black rope pynvml schedule colorcet zarr xarray
$ cd Development/fbpic/
$ git checkout dev
$ python -m pip install .