I wonder if there is a Dockerfile, or Singularity build for GeNN? #545
Replies: 4 comments 10 replies
-
What OS is your laptop running and how does PyGeNN fail? If C++ GeNN works ok, it shouldn't be too tricky to install - definitely no administrative access is required and, between us, we've installed it on several HPC systems without too much pain. Creating a Dockerfile for GeNN is on my todo list but you would be more than welcome to help me out with it! The idea would be to have a docker image with an entrypoint that supports the kind of functionality of NEST's to launch interactive sessions and notebook environments (https://github.com/nest/nest-docker/blob/master/src/3.3/entrypoint.sh#L22-L50). |
Beta Was this translation helpful? Give feedback.
-
I have made and tested out this Dockerfile FROM nvidia/cuda:11.8.0-devel-ubuntu22.04
ENV CUDA_PATH=/usr/local/cuda-11.8
# RUN cuda-memcheck ./has_cuda ; exit 0
# RUN nvcc; exit 0
RUN apt update;
RUN apt install git build-essential lcov wget -y --no-install-recommends
ENV CONDA_DIR /opt/conda
RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh && \
/bin/bash ~/miniconda.sh -b -p /opt/conda
ENV PATH=$CONDA_DIR/bin:$PATH
WORKDIR $HOME/workdir
RUN $(which conda) install -c miniconda swig numpy -y
RUN git clone https://github.com/genn-team/genn.git
RUN mv genn GeNN
WORKDIR GeNN
ENV PATH=$PATH:$HOME/workdir/GeNN/bin
RUN make DYNAMIC=1 LIBRARY_DIRECTORY=`pwd`/pygenn/genn_wrapper/
RUN python setup.py develop
WORKDIR $HOME/workdir/GeNN/userproject/PotjansMicrocircuit_project
RUN make
RUN ./generate_run test
WORKDIR $HOME/workdir/GeNN/
RUN bash tests/run_tests.sh; exit 0 # This would fail any way for reasons outside of my control.
ENTRYPOINT ["/bin/bash"] It fails at the step Maybe I need a different Docker command for building with access to system cuda? |
Beta Was this translation helpful? Give feedback.
-
The docker file in Genn's docker2 branch works for me. With the nvidia docker stuff installed, you just need to run the container with |
Beta Was this translation helpful? Give feedback.
-
As of the 4.8.0 release, there is now an official GeNN docker image built from https://github.com/genn-team/genn/blob/master/Dockerfile and with prebuilt versions published at https://hub.docker.com/repository/docker/gennteam/genn |
Beta Was this translation helpful? Give feedback.
-
I wonder if there is a Dockerfile, or Singularity build for GeNN+CUDA tools? I am wondering this as I am have been debugging my GeNN installation regular GeNN works with CUDA but PyGeNN cannot build a CUDA backend, and so it doesn't have one.
Even if I succeed at debugging my laptop installation of PyGeNN I will ultimately have to redo the installation on HPC, and without administrative privileges.
I have noticed that a lot of HPC projects use the singularity to do simplify and containerize complex builds on HPC. Does something like this already exist for GeNN+PyGeNN?
Beta Was this translation helpful? Give feedback.
All reactions