Update BIO applications

2024-06-24 07:50:45 +02:00
parent 2ea079d059
commit 7404f023f8
+78
@@ -12,6 +12,83 @@
- If you get OOM errors ( Out of memory error), this can be due to "general" memory and GPU card "memory" issues (the latter usually mentions "cuda" in the error). You can either increase the memory (--mem=XXX) or you can specifically go for the largest GPU card (merlin-g-015, A500 GPU card with 24GB memory) by using the option `--constraint=gpumem_24gb`.
- Debugging: In case of errors, go to the folder and check your scripts, the error messages and log files!
**Use case:**
```
# Available variables:
# script_path_abs=/data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8/queue_sub_script.sh
# - the absolute path to the generated submission script
# run_cmd=/data/user/benoit_r/cryosparc/cryosparc_worker/bin/cryosparcw run --project P1 --job J8 --master_hostname merlin-l-01.psi.ch --master_command_core_port 39042 > /data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8/job.log 2>&1
# - the complete command-line string to run the job
# num_cpu=8
# - the number of CPUs needed
# num_gpu=1
# - the number of GPUs needed. Note: the code will use this many GPUs
# starting from dev id 0. The cluster scheduler or this script have the
# responsibility of setting CUDA_VISIBLE_DEVICES so that the job code
# ends up using the correct cluster-allocated GPUs.
# ram_gb=8.0
# - the amount of RAM needed in GB
# job_dir_abs=/data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8
# - absolute path to the job directory
# project_dir_abs=/data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc
# - absolute path to the project dir
# job_log_path_abs=/data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8/job.log
# - absolute path to the log file for the job
# worker_bin_path=/data/user/benoit_r/cryosparc/cryosparc_worker/bin/cryosparcw
# - absolute path to the cryosparc worker command
# run_args=--project P1 --job J8 --master_hostname merlin-l-01.psi.ch --master_command_core_port 39042
# - arguments to be passed to cryosparcw run
# project_uid=P1
# - uid of the project
# job_uid=J8
# - uid of the job
# job_creator=rb
# - name of the user that created the job (may contain spaces)
# cryosparc_username=roger.benoit@psi.ch
# - cryosparc username of the user that created the job (usually an email)
#SBATCH --job-name=cryosparc_P1_J8
#SBATCH --output=/data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8/job.log.out
#SBATCH --error=/data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8/job.log.err
#SBATCH --ntasks=1
#SBATCH --threads-per-core=1
#SBATCH --mem-per-cpu=2000M
#SBATCH --time=7-00:00:00
#SBATCH --partition=gpu
#SBATCH --cluster=gmerlin6
#SBATCH --gpus=1
#SBATCH --cpus-per-gpu=4
# Print hostname, for debugging
echo "Job Id: $SLURM_JOBID"
echo "Host: $SLURM_NODELIST"
export SRUN_CPUS_PER_TASK=$((${SLURM_GPUS:-1} * ${SLURM_CPUS_PER_GPU:-1}))
srun /opt/psi/Programming/anaconda/2019.07/conda/bin/python -c 'import os; print(f"CPUs: {os.sched_getaffinity(0)}")'
# Make sure this matches the version of cuda used to compile cryosparc
module purge
srun /data/user/benoit_r/cryosparc/cryosparc_worker/bin/cryosparcw run --project P1 --job J8 --master_hostname merlin-l-01.psi.ch --master_command_core_port 39042 > /data/project/bio/benoit/Roger/2024_pRB22_b/20201023_pRB22_b/CS-prb22-b-cryosparc/J8/job.log 2>&1
EXIT_CODE=$?
echo "Exit code: $EXIT_CODE"
exit $?
```
![image](uploads/a18136b73f7e155782a91e00a26cc820/image.png)
![image](uploads/9ae914b53c15f046856c613c061c60ce/image.png)
Two solutions:
1.)
Increase memory as long as it is enough - limits depending on nodes...
2.)
![image](uploads/d6cb7dfe55369b019cef1b6d06f78132/image.png)
## Cryosparc
[Cryosparc official documentation](https://cryosparc.com/docs)
@@ -33,6 +110,7 @@
<img src="uploads/e139c07804105107dd34d92f82028f9f/image.png" alt="drawing" width="300"/>
## Alphafold
[Alphafold repository](https://github.com/google-deepmind/alphafold)