Using custom conda environments on UCloud
Set up your “own” conda
- Set up your own conda (instead of the default conda), following this link
- The reason is because that the system default conda is cleared every time.
- After the correct set up, you can verify by:
which conda
- If it returns
/work/miniconda3/bin/conda
, it’s correctly setted up.
- If it returns
Create a conda environment
The conda should be in a custom place:
conda create --prefix "/work/INFIMM Public/miniconda3/envs/scverse" python=3.12
A separate conda environment for each analysis. For example, in the case below, sc_gpu is used for GPU computation of single cell analysis and scverse is used for CPU comutation of single cell analysis.
sc_gpu /work/miniconda3/envs/sc_gpu
scverse /work/miniconda3/envs/scverse
Mount a conda env
When submitting the job, mount the conda folder, in our case /work/INFIMM Public/miniconda3/
. This path will be accessible in the application as /work/miniconda3
.
(For the first time) Execute the following command
- Start the terminal interface by
conda init
- Restart the terminal interface
- Activate the conda env by
conda activate "/work/INFIMM Public/miniconda3/envs/scverse"
- Install
ipykernel
conda install ipykernel
- Add the environment as a Jupyter kernal
python -m ipykernel install --user --name cellxgene --display-name "Python (cellxgene)"
(Wrap the set up in an) Initiation script
#!/bin/bash
eval "$(/work/miniconda3/bin/conda shell.bash hook)"
conda init
conda activate scverse
python -m ipykernel install --user --name scverse --display-name "Python (scverse)"
Additional infomration for creating a GPU accelerated sc analysis environment
Set up (only run once)
Use the custom conda.
eval "$(/work/miniconda3/bin/conda shell.bash hook)
The conda environment should be in a custom place:
conda create --prefix /work/miniconda3/envs/sc_gpu python=3.12
Activate the environment:
conda activate sc_gpu
Install PyTorch and JAX
- Identify the CUDA version (such as
12.4
) bynvidia-smi
ornvcc --version
orcat /usr/local/cuda/version.txt
ordpkg -l | grep cuda
- Install the PyTorch with the appropriate command.
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia
- Install JAX
pip install -U "jax[cuda12]"
- Identify the CUDA version (such as
Install scvi
conda install scvi-tools -c conda-forge
Install scanpy
conda install -c conda-forge scanpy python-igraph leidenalg
Install
ipykernel
conda install ipykernel
Add the environment as a Jupyter kernal
python -m ipykernel install --user --name sc_gpu --display-name "Python (sc_gpu)"