-
Notifications
You must be signed in to change notification settings - Fork 0
Configuring GPU for Helixer
By default, your GPU architecture may not be compatible with Helixer. Please see Helixer documentation on the GPU requirements.
To run RAGNAROK using the slurm profile, modify conf/slurm_custom.conf and be sure the cluster options for your system are configured to request the proper GPU resources available. For example, you may need to include --gres=gpu:v100s:1 or --gres=gpu:h100:1'.
Before committing to a full RAGNAROK run, you may consider the following sanity-check for your system:
#!/usr/bin/env bash
<you sbatch header info with specified gres goes here if using slurm>
echo -e "\n=================================="
echo "=== Host GPU ==="
echo "=================================="
nvidia-smi
echo -e "\n=================================="
echo "=== Container CUDA ==="
echo "=================================="
singularity exec --nv docker://gglyptodon/helixer-docker:helixer_v0.3.4_cuda_12.2.2-cudnn8 nvcc --version 2>/dev/null || echo "nvcc not found in container"
echo -e "\n=================================="
echo "=== Container TF GPU Detection ==="
echo "=================================="
singularity exec --nv docker://gglyptodon/helixer-docker:helixer_v0.3.4_cuda_12.2.2-cudnn8 python3 -c "import tensorflow as tf; print('TF version:', tf.__version__); print('GPUs detected:', tf.config.list_physical_devices('GPU'))"
echo -e "\n=================================="
echo "=== Check for helixer_post_bin ==="
echo "=================================="
singularity exec --nv docker://gglyptodon/helixer-docker:helixer_v0.3.4_cuda_12.2.2-cudnn8 which helixer_post_bin || echo "helixer_post_bin not found in PATH"
If all goes well, you should see an output similar to the following:
==================================
=== Host GPU ===
==================================
Thu Feb 5 12:35:13 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 560.35.05 Driver Version: 560.35.05 CUDA Version: 12.6 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 Tesla V100S-PCIE-32GB On | 00000000:AF:00.0 Off | 0 |
| N/A 26C P0 24W / 250W | 1MiB / 32768MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+
==================================
=== Container CUDA ===
==================================
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2023 NVIDIA Corporation
Built on Tue_Aug_15_22:02:13_PDT_2023
Cuda compilation tools, release 12.2, V12.2.140
Build cuda_12.2.r12.2/compiler.33191640_0
==================================
=== Container TF GPU Detection ===
==================================
TF version: 2.15.1
GPUs detected: [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
==================================
=== Check for helixer_post_bin ===
==================================
/home/helixer_user/bin/helixer_post_bin
If Helixer fails to run in CPU mode, an alternative option is to run helixer on a GPU partition, then use the output gff3 file as input to RAGNAROK and provide the --skip_hx flag. To do this, the "hx" line in the --design file will need the first column to provide a full path to the gff3 file from helixer (these are typically left blank in the tsv).
/path/to/helixer.gff3 hx True False False
st True 1 False True
tr False -0.5 False False
mp True 1 False False