Skip to content

Commit

Permalink
Documentation updates
Browse files Browse the repository at this point in the history
  • Loading branch information
JLBLine committed Aug 20, 2024
1 parent ed9d885 commit 061260f
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 11 deletions.
13 changes: 9 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,11 @@
<!-- > Although ``WODEN`` is still very much a great tool for MWA interferomteric simulations, I (Jack Line) am no longer working in astronomy. I'll drop in to advise and/or fix bugs from time to time, but I can't commit to developing new features I'm afraid. If you want new features (or even better, want to write new features), please reach out to the [Epoch of Reionisation group at Curtin University](https://astronomy.curtin.edu.au/research/epoch-of-reionisation/). They should know if anyone is actively working on/using the software. If you end up taking over this project, feel free to delete this message! -->

> New in version 2.3-alpha:
- Full polarisation is back! You can now simulate QUV visibilities, and they can be independent to Stokes I. In fact, you can set Stokes I to zero in the sky model, and still enter QUV information.
- Stokes V can either be a power-law, curved power-law, be a polarisation fraction of Stokes I, or be a list of flux densities.
- Linear polarisation (Q and U) can either be a power-law, curved power-law, be a polarisation fraction of Stokes I, or be a list of flux densities. The first three are always used in conjunction with a rotation measure. List-type fluxes can be given separately for Q and U, which makes Q and U independent of each other. Alternatively, a single list of linear polarisation fluxes can be given, which is used in conjunction with a rotation measure to determine Q and U.

> New in version 2.2-alpha:
- Thanks to Marcin Sokolowski, and code from the [PaCER Blink project](https://github.com/PaCER-BLINK-Project), there is nominal support for AMD GPUs via ROCm. I've managed to compile and run on the Pawsey Setonix cluster, but this is the only AMD GPU I have access to. If you have an AMD GPU, please test and let me know how you go!
- There are some installation examples in ``WODEN/templates/`` for a CUDA and an AMD installation on superclusters. Hopefully you can adapt these to your needs if the Docker images don't work for you.
Expand Down Expand Up @@ -42,16 +47,16 @@ Read the comprehensive [installation guide on readthedocs](https://woden.readthe
The quickest way is to use a docker image (for a CUDA arch of 7.5 for example):

```
docker pull docker://jlbline/woden-2.2:cuda-75
docker pull docker://jlbline/woden-2.3:cuda-75
```

and then run things through Docker or Singularity (more detail on that on [ReadTheDocs](https://woden.readthedocs.io/en/latest/installation/installation.html#dependencies)). These versions come bundled with all the MWA FEE primary beam files which is nice.

Docker versions tested to run on various Australian superclusters are listed below:

- `jlbline/woden-2.2:cuda-60` - tested on Swinburne OzStar
- `jlbline/woden-2.2:cuda-80` - tested on Swinburne Ngarrgu Tindebeek
- `jlbline/woden-2.2:setonix` - tested on Pawsey Setonix (this is *very* experimental)
- `jlbline/woden-2.3:cuda-60` - tested on Swinburne OzStar
- `jlbline/woden-2.3:cuda-80` - tested on Swinburne Ngarrgu Tindebeek
- `jlbline/woden-2.3:setonix` - tested on Pawsey Setonix (this is *very* experimental)

To get the most control, install yourself. Again, go to [ReadTheDocs](https://woden.readthedocs.io/en/latest/installation/installation.html#dependencies) for details, but in short, you will need the dependencies:

Expand Down
14 changes: 7 additions & 7 deletions docs/sphinx/installation/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -203,11 +203,11 @@ For CUDA

Fair warning, this is a new option, and hasn't been heavily tested. I have successfully run it on a number of clusters (via singularity). Which version you pull depends on your GPU. If you have an NVIDIA GPU, you need to work out what your compute capability is, and pull the appropriate image. Say you have an NVIDIA V100 card, you have a compute capacity of 7.0, so you'd pull the image like this::

$ docker pull jlbline/woden-2.2:cuda-70
$ docker pull jlbline/woden-2.3:cuda-70

I have made images for computes ``60,61,70,75,80,86``. If you need another compute, either run the Docker script to make a new docker, or just compile from source as instructed above. In theory, you can just run ``WODEN`` commands by doing something like this::

$ docker run -it --gpus all woden-2.2:cuda-70 \
$ docker run -it --gpus all woden-2.3:cuda-70 \
--env XDG_CONFIG_HOME=/somewhere/astropy_storage \
--env XDG_CACHE_HOME=/somewhere/astropy_storage \
run_woden.py --help
Expand All @@ -219,7 +219,7 @@ For HIP

The only HIP image I've made is for the Setonix cluster, and is based on a Pawsey specific image https://quay.io/repository/pawsey/rocm-mpich-base?tab=tags&tag=latest. You can pull it like this::

$ docker pull jlbline/woden-2.2:setonix
$ docker pull jlbline/woden-2.3:setonix

It is *highly* unlikely it won't work anywhere else.

Expand All @@ -231,12 +231,12 @@ For CUDA

If your system has ``singularity`` and not docker, you can convert the docker image to a singularity image via::

$ singularity build woden-2.0-70.sif docker://jlbline/woden-2.2:cuda-70
$ singularity build woden-2.3-70.sif docker://jlbline/woden-2.3:cuda-70

with an example of running the help looking something like::

$ singularity exec --nv --home=/astro/mwaeor/jline \
woden-2.0-70.sif run_woden.py --help
woden-2.3-70.sif run_woden.py --help

Similarly to the ``docker`` image, ``--nv`` means use the NVIDIA GPUs, and ``--home`` sets a specific location to treat as home if you're not on a local machine.

Expand All @@ -245,11 +245,11 @@ For HIP

Again, the only HIP image I've made is for the Setonix cluster where you can do::
$ singularity build woden-2.2:setonix.sif docker://jlbline/woden-2.2:setonix
$ singularity build woden-2.3:setonix.sif docker://jlbline/woden-2.3:setonix

and run it like::

$ singularity exec --home=/scratch/mwaeor/jline \
${MYSOFTWARE}/woden-2.2-setonix.sif run_woden.py --help
${MYSOFTWARE}/woden-2.3-setonix.sif run_woden.py --help

.. warning:: EVERYTHING on the internet will tell you to use the ``--rocm`` flag. This WILL NOT WORK with the Setonix based image, because of shenanigans. So leave it be.

0 comments on commit 061260f

Please sign in to comment.