furax


Namefurax JSON
Version 0.7 PyPI version JSON
download
home_pageNone
SummaryOperators and solvers for high-performance computing.
upload_time2024-11-20 09:22:35
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords scientific computing
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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](https://gitlab.in2p3.fr/help/user/profile/personal_access_tokens).
For the name, choose something like `read scipol` and for the scopes, select `read_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:
```commandline
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:
```commandline
pip install furax
```

## Installation for development purposes

```bash
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](https://jax.readthedocs.io/en/latest/installation.html) according to the target architecture.

### Testing
To check that the package is correctly installed:
```bash
pytest
```

## Running on JeanZay

### Load cuda and and cudnn for JAX

```bash
module load cuda/11.8.0 cudnn/8.9.7.29-cuda
```

### Create Python env (only the first time)

```bash
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

```bash
sbatch slurms/astro-sim-v100-testing.slurm
```
To launch your own script

```bash
sbatch slurms/astro-sim-v100-run.slurm yourscript.py
```

You can also allocate ressources and go into bash mode

```bash
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

```bash
cd $ALL_CCFRWORK/furax-main
```

Then launch scripts as you see fit

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "furax",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "Pierre Chanial <chanial@apc.in2p3.fr>",
    "keywords": "scientific computing",
    "author": null,
    "author_email": "Pierre Chanial <chanial@apc.in2p3.fr>",
    "download_url": "https://files.pythonhosted.org/packages/1e/b4/e2a62e01f0a39765d8639eda1d061a5a62e7e6a244cb8232ba04c5c4bf2d/furax-0.7.tar.gz",
    "platform": null,
    "description": "# Furax\n\nFurax: a Framework for Unified and Robust data Analysis with JAX.\n\nThis framework provides building blocks for solving inverse problems, in particular in the astrophysical and cosmological domains.\n\n## Installation of the stable packaged distribution\n\nThe GitLab repository is currently private and two pieces of information need to be specified: the URL of the repository and the credentials.\n\n- Create a Personal Access Token by following these [instructions](https://gitlab.in2p3.fr/help/user/profile/personal_access_tokens).\nFor the name, choose something like `read scipol` and for the scopes, select `read_api`.\n\n- Edit the file ~/.netrc to store the credentials\n```\nmachine gitlab.in2p3.fr\nlogin __token__\npassword <your-personal-access-token>\n```\nMake sure the .netrc file are appropriately set:\n```commandline\nchmod 600 ~/.netrc\n```\n- Edit ~/.config/pip/pip.conf\n```\n[global]\nindex-url = https://gitlab.in2p3.fr/api/v4/projects/26092/packages/pypi/simple\n```\n- After these steps are completed: you can install `furax` in the normal way:\n```commandline\npip install furax\n```\n\n## Installation for development purposes\n\n```bash\ngit clone git@github.com:CMBSciPol/furax.git\ncd furax\npython3 -m venv venv\nsource venv/bin/activate\npip install -e .[dev]\n```\n\nThen [Install JAX](https://jax.readthedocs.io/en/latest/installation.html) according to the target architecture.\n\n### Testing\nTo check that the package is correctly installed:\n```bash\npytest\n```\n\n## Running on JeanZay\n\n### Load cuda and and cudnn for JAX\n\n```bash\nmodule load cuda/11.8.0 cudnn/8.9.7.29-cuda\n```\n\n### Create Python env (only the first time)\n\n```bash\nmodule load python/3.10.4 && conda deactivate\npython -m venv venv\nsource venv/bin/activate\n# install jax\npip install --upgrade \"jax[cuda11_local]\" -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html\n# install furax\npip install -e .[dev]\n```\n### launch script\n\nTo launch only the pytests\n\n```bash\nsbatch slurms/astro-sim-v100-testing.slurm\n```\nTo launch your own script\n\n```bash\nsbatch slurms/astro-sim-v100-run.slurm yourscript.py\n```\n\nYou can also allocate ressources and go into bash mode\n\n```bash\nsrun --pty --account=nih@v100 --nodes=1 --ntasks-per-node=1 --cpus-per-task=10 --gres=gpu:1 --hint=nomultithread bash\nmodule purge\nmodule load python/3.10.4\nsource venv/bin/activate\nmodule load cuda/11.8.0  cudnn/8.9.7.29-cuda\n# Then do your thing\npython my_script.py\npytest\n```\nDon't leave the bash running !! (I would suggest running script with sbatch)\n\n### Specific for nih / SciPol project\n\nThe repo is already in the commun WORK folder, the data is downloaded and the environment is ready.\n\nYou only need to do this\n\n```bash\ncd $ALL_CCFRWORK/furax-main\n```\n\nThen launch scripts as you see fit\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Operators and solvers for high-performance computing.",
    "version": "0.7",
    "project_urls": {
        "homepage": "https://scipol.in2p3.fr",
        "repository": "https://github.com/CMBSciPol/furax"
    },
    "split_keywords": [
        "scientific",
        "computing"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c0d4f85c945cc3476966e0b39e1f561e6779bbd2beb7c7f4da1c87e446e7ebd7",
                "md5": "22e818b9486488e1f28c30dff34ca585",
                "sha256": "24df3b8d6db6a1039cfc841505fd19c556c7e25f128f880153df67444c665f56"
            },
            "downloads": -1,
            "filename": "furax-0.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "22e818b9486488e1f28c30dff34ca585",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 37699,
            "upload_time": "2024-11-20T09:22:33",
            "upload_time_iso_8601": "2024-11-20T09:22:33.924542Z",
            "url": "https://files.pythonhosted.org/packages/c0/d4/f85c945cc3476966e0b39e1f561e6779bbd2beb7c7f4da1c87e446e7ebd7/furax-0.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1eb4e2a62e01f0a39765d8639eda1d061a5a62e7e6a244cb8232ba04c5c4bf2d",
                "md5": "5e465574be27c6ccd17bdf17361051b0",
                "sha256": "b6153b8e82aecfdc5f53e922acedf3a9ba9b347ac5880ee9caa9ec3a150eda51"
            },
            "downloads": -1,
            "filename": "furax-0.7.tar.gz",
            "has_sig": false,
            "md5_digest": "5e465574be27c6ccd17bdf17361051b0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 120883,
            "upload_time": "2024-11-20T09:22:35",
            "upload_time_iso_8601": "2024-11-20T09:22:35.777727Z",
            "url": "https://files.pythonhosted.org/packages/1e/b4/e2a62e01f0a39765d8639eda1d061a5a62e7e6a244cb8232ba04c5c4bf2d/furax-0.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-20 09:22:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "CMBSciPol",
    "github_project": "furax",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "furax"
}
        
Elapsed time: 0.38232s