.. _`cuda-tutorial`: =========================== Using CUDA in Docker Images =========================== .. contents:: :depth: 1 :local: .. admonition:: Compute Resources - Have questions or need help with compute, including activation or issues? Follow `this link. `__ - :ref:`User Agreement ` .. admonition:: Docker Usage - The information on this page assumes that you have a knowledge base of using Docker to create images and push them to a repository for use. If you need to review that information, please see the links below. - :ref:`Docker and the RIS Compute Service ` - :ref:`Docker Basics: Building, Tagging, & Pushing A Custom Docker Image ` Overview -------- This documentation will guide you on making sure you're using the most appropriate CUDA version for your Docker image in regards to the Scientific Compute Platform. Using the Correct Version ------------------------- The Scientific Compute Platform CUDA driver is version 11.6.0. Therefore all CUDA images will need to use that version of CUDA. Some examples .. code:: nvidia/cuda:11.6.0-base-ubuntu20.04 nvidia/cuda:11.6.0-base-ubuntu18.04 nvidia/cuda:11.6.0-base-centos7 Nvidia has a lot of base images to develop from and can be found here: https://hub.docker.com/r/nvidia/cuda/tags?page=1&name=11.6.0 Testing Your Image ------------------ Shown below are the steps to run a test job. - Start up an interactive job with your Docker image. There is a test script in https://github.com/WashU-IT-RIS/docker-osu-micro-benchmarks.git for the OSU GPU test. - Clone the repository. .. code:: git clone https://github.com/WashU-IT-RIS/docker-osu-micro-benchmarks.git - Change directory to docker-osu-mirco-benchmarks. .. code:: cd docker-osu-mirco-benchmarks - Run an OSU Benchmark GPU test. - Replace with an OSU test that you want to run. For example, osu_bw for OSU bandwidth test. - Replace with the compute group you are a member of. .. code:: QUEUE=subscription bin/osu-test-gpu.sh -G Docker Images Identified That Utilize CUDA ------------------------------------------ .. list-table:: Current as of 6/10/22 :widths: 50 50 :header-rows: 1 * - Docker Image - CUDA Version * - aneuhierl/jg_an:jg_fin - 11.4.43 * - anibali/pytorch:1.5.0-cuda10.2 - 10.2.89 * - apaul7/docker-splice-ai:v1.3.1.gpu - 10.1.243 * - banksyicar/opencv - 10.1.243 * - buddej/alphafold:2.1.2 - 11.1.74 * - catgumag/alphafold - 11.2.152 * - catgumag/alphafold:2.1.0 - 11.2.152 * - cgwyx/alphafold - 11.0.221 * - d0ckaaa/matlab - 11.0.221 * - dlee12321/tf_ris:latest - 11.4.108 * - dlee12321/tf_ris:prob - 11.4.108 * - docker121720/chimeric:0.3 - 11.3.109 * - encodedcc/hic-pipeline@sha256:a7a7f32b5529da8af0e3a7a14bd6142b646a43789df9edea3cb3ecc77f624b8d - 8.0.61 * - evinpadhi/selene:CUDA - 10.0.130/9.0.176 * - evinpadhi/selene:GPU - 10.0.130/9.0.176 * - evinpadhi/selene:gpu_test - 10.0.130 * - gangwonee/latent_path:1.0 - 10.0.130 * - gangwonee/stylegan2:cuda10 - 10.0.130 * - gangwonee/stylegan2:cuda8 - 8.0.61 * - gangwonee/stylegan3:ver1.1 - 11.4.108 * - gangwonee/task-unet:1.0 - 9.2.148 * - gangwonee/task-unet2:1 - 10.1.243 * - gangwonee/task-unet2:1.2 - 9.2.148 * - gcr.io/ris-registry-shared/alphafold - 11.2.152 * - gcr.io/ris-registry-shared/alphafold:2.1.0_beta - 11.2.152 * - gcr.io/ris-registry-shared/alphafold:2.1.0_beta_12 - 11.2.152 * - gcr.io/ris-registry-shared/alphafold:2.1.0_beta_14 - 11.2.152 * - gcr.io/ris-registry-shared/alphafold:2.1.0_beta_8 - 11.2.152 * - gcr.io/ris-registry-shared/alphafold:5 - 11.2.152 * - gcr.io/ris-registry-shared/alphafold:latest - 11.2.152 * - gcr.io/ris-registry-shared/base-x-cuda - 10.1.243 * - gcr.io/ris-registry-shared/matlab - 11.0.221 * - gcr.io/ris-registry-shared/novnc - 11.0.221 * - gcr.io/ris-registry-shared/parabricks - 10.1.243/11.4.108 * - gcr.io/ris-registry-shared/relion:latest - 10.1.243 * - gcr.io/ris-registry-shared/relion:ood - 10.1.243 * - getao/cuda11.2:python - 11.2.152 * - getao/cuda_python:unroll_10.1 - 10.2.89 * - ghaller/alphafold - 11.1.74 * - gromacs/gromacs - 11.6.55 * - gromacs/gromacs:gmx-2022-cuda-11.6.0-avx2 - 11.6.55 * - gromacs/gromacs:gmx-2022-cuda-11.6.0-sse2 - 11.6.55 * - hlabdocker/hlabdlc2 - 10.0.130 * - hlabdocker/hlabdlc2_2_0_2 - 11.2.152 * - hlabdocker/hlabdlc2_2_0_3 - 11.2.152 * - hlabdocker/hlabdlc2_latest - 11.2.152 * - hlabdocker/hlablolcat - 11.2.152 * - hshephe2/rstudio.docker:latest - 10.1.243 * - jackosvky/rapid_torch - 11.0.221 * - jasonlg/tf2_gpu_docker:latest - 10.1.243 * - jbcm627/modulus - 11.3.58 * - jng2/testme:grump_numba_snake - 11.0.221 * - jnmscooter/latest_tensorflow_gpu_jupyter - 11.2.152 * - jnmscooter/tensorflow2_3_0_gpu_jupyter - 11.2.152 * - josephk4/unet-phantom:1.0.0-environ - 11.0.221 * - josephk4/unet-phantom:cuda-10.2 - 10.2.89 * - josephk4/unet-phantom:cuda-11.0 - 10.2.89/11.0.221/11.5.117 * - josephk4/unet-phantom:cuda-11.5 - 10.2.89/11.0.221/11.5.117 * - josephk4/unet-phantom:tf - 11.2.152 * - kboltonlab/jupyter-gpu:pyjlr - 11.0.221 * - kboltonlab/test_cuda:1.1 - 11.6.55 * - kboltonlab/test_cuda - 11.6.55 * - kboltonlab/test_cuda:1.2 - 11.6.55 * - kboltonlab/test_cuda:1.3 - 11.6.55 * - kboltonlab/test_cuda:1.4 - 10.1.243 * - kboltonlab/tinker - 11.6.55 * - koetjen/rstudio:4.0.3 - 10.1.243 * - koetjen/rstudio:seurat - 10.1.243 * - koetjen/rstudio@sha256:094c6aa0a5dfe6252a75896b4f0d749dd3ec2abcaf77d01aa05ee0244909842d - 10.1.243 * - koetjen/seurat-hdf5r:dsb - 10.1.243/10.2.89 * - louissmith/tinker9:1.0.0-10.1-r - 10.1.243 * - maflotho/scvi-tools-gpu:latest - 11.3.109 * - melonistic/base - 11.0.221 * - mvahed/tmb:latest - 11.0.221 * - nvcr.io/hpc/gromacs:2021 - 11.2.152 * - nvcr.io/hpc/gromacs:2021.3 - 11.4.108 * - nvidia/cuda:11.0-base nvidia-smi - 11.0.221 * - nvidia/cuda:11.2.2-devel-ubuntu20.04 - 11.2.152 * - pytorch/pytorch:latest - 11.3.109 * - rapidsai/rapidsai:0.18-cuda11.0-runtime-ubuntu20.04-py3.8 - 11.0.221 * - rapidsai/rapidsai:21.08-cuda11.0-runtime-ubuntu20.04-py3.7 - 11.0.221 * - registry.gsc.wustl.edu/cpohl/parabricks:v3.0.0 - 9.0.176 * - rnakato/singlecell_jupyter - 11.5.117 * - saumikn/chesstrainer - 10.1.243/11.0.221 * - seonyeongpark/sp_kwave:fourthtry - 10.2.89 * - seonyeongpark/sp_kwave:python3 - 10.2.89 * - seonyeongpark/sp_kwave:thirdtry - 11.4.108 * - seonyeongpark/sp_mcx:secondtry - 11.4.108 * - seonyeongpark/sp_mcx:thirdtry - 11.4.108 * - sharmaatul11/rapidsai1:latest - 11.0.221 * - smk5g5/maca_python:latest - 11.6.55 * - smk5g5/maca_python@sha256:90a8c2467b80e5f2d32e1681cc02a46d69a2363fc7a9abd91e86c5abd3206250 - 11.3.109 * - smk5g5/scina:1.2.0 - 10.0.130/10.1.243/10.2.89 * - smk5g5/scina_r_4_0_0:1.2.0 - 10.0.130/10.1.243/10.2.89 * - smk5g5/scvi-tools:latest - 11.6.55 * - smk5g5/scvi-tools@sha256:2c2edbfcc218e253e7f763bb8698aeda664eeaa1f2355114aa81038cae6b40d3 - 11.6.55 * - tensorflow/tensorflow:latest-gpu - 11.2.152 * - teresho4/bioinformatics:deepab - 10.2.89 * - us.gcr.io/ris-appeng-shared-dev/matlab2020b - 10.2.89 * - us.gcr.io/ris-appeng-shared-dev/matlab2021a - 11.0.221 * - us.gcr.io/ris-appeng-shared-dev/parabricks:v3.5.0.1 - 10.1.243/10.2.89 * - us.gcr.io/ris-appeng-shared-dev/parabricks:v3.7beta - 10.1.243 * - us.gcr.io/ris-appeng-shared-dev/parabricks:v3.7beta_ampere - 11.0.221/11.4.108 * - uvarc/alphafold:2.2.0 - 11.1.74 * - xiangzezeng/tinker9:cuda10.1_runtime_ubuntu18.04_nvhpc20.9_mini - 10.1.243/10.2.89/11.0.221 * - xiaoyuz/ccsmeth - 10.1.243 * - xiaoyuz/ccsmeth:cuda10 - 10.1.243 * - ymreyoud/seurat_disk - 10.1.243/10.2.89 * - zim1217/blur:conda - 10.2.89 * - zim1217/blur:latest - 11.6.55 * - zim1217/blur:new - 11.6.55