saturn on Biowulf

Saturn is a deep learning approach that couples gene expression with protein representations learnt using large protein language models for cross-species integration. The key idea in SATURN is to map cells from all datasets to a shared space of functionally related genes that we name macrogenes. Using macrogenes, SATURN is uniquely able to detect functionally related genes co-expressed across species.

References:

Documentation
Important Notes

Downloading data
[user@helix]$ module load saturn
[user@helix]$ python-saturn

Interactive job
Interactive jobs should be used for debugging, graphics, or applications that cannot be run as batch jobs.

Allocate an interactive session and run the program.
Sample session (user input in bold):

[user@biowulf]$ sinteractive --gres=lscratch:30,gpu:a100:1 -c 8 --mem=60g  
salloc.exe: Pending job allocation 46116226
salloc.exe: job 46116226 queued and waiting for resources
salloc.exe: job 46116226 has been allocated resources
salloc.exe: Granted job allocation 46116226
salloc.exe: Waiting for resource configuration
salloc.exe: Nodes cn3144 are ready for job

[user@cn3144 ~]$ module load saturn

[user@cn3144 ~]$ cd /data/$USER/

[user@cn3144 ~]$ python-saturn


Batch job
Most jobs should be run as batch jobs.

Create a batch input file (e.g. saturn.sh). For example:

#!/bin/bash
set -e
module load saturn
python-saturn ../SATURN/train-saturn.py xxxx

Submit this job using the Slurm sbatch command.

sbatch [--cpus-per-task=#] [--mem=#] saturn.sh