Operators and solvers for high-performance computing.
Project description
Furax
Furax: a Framework for Unified and Robust data Analysis with JAX.
This framework provides building blocks for solving inverse problems, in particular in the astrophysical and cosmological domains.
Installation of the stable packaged distribution
The GitLab repository is currently private and two pieces of information need to be specified: the URL of the repository and the credentials.
-
Create a Personal Access Token by following these instructions. For the name, choose something like
read scipol
and for the scopes, selectread_api
. -
Edit the file ~/.netrc to store the credentials
machine gitlab.in2p3.fr
login __token__
password <your-personal-access-token>
Make sure the .netrc file are appropriately set:
chmod 600 ~/.netrc
- Edit ~/.config/pip/pip.conf
[global]
index-url = https://gitlab.in2p3.fr/api/v4/projects/26092/packages/pypi/simple
- After these steps are completed: you can install
furax
in the normal way:
pip install furax
Installation for development purposes
git clone git@github.com:CMBSciPol/furax.git
cd furax
python3 -m venv venv
source venv/bin/activate
pip install -e .[dev]
Then Install JAX according to the target architecture.
Testing
To check that the package is correctly installed:
pytest
Running on JeanZay
Load cuda and and cudnn for JAX
module load cuda/11.8.0 cudnn/8.9.7.29-cuda
Create Python env (only the first time)
module load python/3.10.4 && conda deactivate
python -m venv venv
source venv/bin/activate
# install jax
pip install --upgrade "jax[cuda11_local]" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
# install furax
pip install -e .[dev]
launch script
To launch only the pytests
sbatch slurms/astro-sim-v100-testing.slurm
To launch your own script
sbatch slurms/astro-sim-v100-run.slurm yourscript.py
You can also allocate ressources and go into bash mode
srun --pty --account=nih@v100 --nodes=1 --ntasks-per-node=1 --cpus-per-task=10 --gres=gpu:1 --hint=nomultithread bash
module purge
module load python/3.10.4
source venv/bin/activate
module load cuda/11.8.0 cudnn/8.9.7.29-cuda
# Then do your thing
python my_script.py
pytest
Don't leave the bash running !! (I would suggest running script with sbatch)
Specific for nih / SciPol project
The repo is already in the commun WORK folder, the data is downloaded and the environment is ready.
You only need to do this
cd $ALL_CCFRWORK/furax-main
Then launch scripts as you see fit
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file furax-0.7.tar.gz
.
File metadata
- Download URL: furax-0.7.tar.gz
- Upload date:
- Size: 120.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6153b8e82aecfdc5f53e922acedf3a9ba9b347ac5880ee9caa9ec3a150eda51 |
|
MD5 | 5e465574be27c6ccd17bdf17361051b0 |
|
BLAKE2b-256 | 1eb4e2a62e01f0a39765d8639eda1d061a5a62e7e6a244cb8232ba04c5c4bf2d |
File details
Details for the file furax-0.7-py3-none-any.whl
.
File metadata
- Download URL: furax-0.7-py3-none-any.whl
- Upload date:
- Size: 37.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24df3b8d6db6a1039cfc841505fd19c556c7e25f128f880153df67444c665f56 |
|
MD5 | 22e818b9486488e1f28c30dff34ca585 |
|
BLAKE2b-256 | c0d4f85c945cc3476966e0b39e1f561e6779bbd2beb7c7f4da1c87e446e7ebd7 |