项目作者: josephwkania

项目描述 :
Singularity containers with common radio transient search software.
高级语言: Singularity
项目地址: git://github.com/josephwkania/radio_transients.git
创建时间: 2021-03-06T05:27:00Z
项目社区:https://github.com/josephwkania/radio_transients

开源协议:GNU General Public License v3.0

下载


radio_transients

Issues
Forks
Stars
License
Sylabs

Overview

These are my Singularity Recipes for common radio transient software.
There are three containers

radio_transients

Contains everything (CPU+GPU)

  1. CUDA 10.2
  2. FETCH https://github.com/devanshkv/fetch -- In Conda environment `FE`
  3. heimdall https://sourceforge.net/p/heimdall-astro/wiki/Use/
  4. - dedisp https://github.com/ajameson/dedisp
  5. htop https://htop.dev/
  6. iqrm_apollo https://gitlab.com/kmrajwade/iqrm_apollo
  7. jupyterlab https://jupyter.org/
  8. PRESTO https://www.cv.nrao.edu/~sransom/presto/
  9. psrdada http://psrdada.sourceforge.net/
  10. psrdada-python https://github.com/TRASAL/psrdada-python
  11. psrcat https://www.atnf.csiro.au/people/pulsar/psrcat/download.html
  12. pysigproc https://github.com/devanshkv/pysigproc
  13. riptide https://github.com/v-morello/riptide
  14. sigproc https://github.com/SixByNine/sigproc
  15. Tempo http://tempo.sourceforge.net/
  16. RFIClean https://github.com/ymaan4/RFIClean
  17. YAPP https://github.com/jayanthc/yapp
  18. your https://github.com/thepetabyteproject/your

Get with
singularity pull --arch amd64 library://josephwkania/radio_transients/radio_transients:latest

*One of FETCH’s dependencies causes PRESTO’s Python scripts to fail.
This necessitated putting them in different environments.
Everything except for PRESTO is in RT, which is loaded by default.
PRESTO is in PE, in the shell you can activate this
with conda activate PE. If you need access outside the container,
you should use radio_transients:cpu, which has PRESTO in the default environment.

radio_transients_cpu

Contains CPU based programs

  1. htop
  2. iqrm_apollo
  3. jupyterlab
  4. PRESTO
  5. psrcat
  6. pysigproc
  7. riptide
  8. sigproc
  9. Tempo
  10. RFIClean
  11. YAPP
  12. your

Get with
singularity pull --arch amd64 library://josephwkania/radio_transients/radio_transients:cpu
There is an arm version Singularity.arm,
singularity pull --arch arm library://josephwkania/radio_transients/radio_transients:arm

radio_transients_gpu

Contains gpu based programs

  1. CUDA 10.2
  2. FETCH
  3. jupyterlab
  4. heimdall
  5. - dedisp
  6. htop
  7. psrdada
  8. psrdada-python
  9. your

Get with
singularity pull --arch amd64 library://josephwkania/radio_transients/radio_transients:gpu

How to use

Your $HOME automatically gets mounted.
You can mount a directory with -B /dir/on/host:/mnt, which will mount /dir/on/host to /mnt in the container.

For the gpu processes, you must pass --nv when running singularity.

singularity shell --nv -B /data:/mnt radio_transients_gpu.sif
will mount /data to /mnt, give you GPU access, and drop you into the interactive shell.

singularity exec --nv -B /data:/mnt radio_transients_gpu.sif your_heimdall.py -f /mnt/data.fil
will mount /data to /mnt, give you GPU access, and run your_heimdall.py without entering the container.

All the Python scripts are installed in a Conda environment RT, this environment is automatically loaded.

You can see the commits and corresponding dates by running singularity inspect radio_transients.sif

Sylabs Cloud

These are built on a E5 v3 family machine and uploaded to Sylabs Cloud at
https://cloud.sylabs.io/library/josephwkania/radio_transients/radio_transients
They where last built on 27-Nov-2021

If your processor your processor is significantly older than this, you may run into problems with
the older processor not having the whole instruction set needed. In this case, you should build
use singularity to build the image locally.

An archival version of these (built 25-April-2021) are on Singularity Hub at:
https://singularity-hub.org/collections/5231
https://www.singularity-hub.org/static/img/hosted-singularity--hub-%23e32929.svg

Improvements

If you come across bug or have suggestions for improvements, let me know or submit a pull request.

Thanks

To Kshitij Aggarwal for bug reports and suggestions.