From e2152647725618de886374a1ea536276d0f1a724 Mon Sep 17 00:00:00 2001 From: Nikolai Zakharov Date: Fri, 31 Mar 2023 16:16:36 +0800 Subject: [PATCH 1/2] feat: PERF000: added dockerfile --- .dockerignore | 12 +++++++++++ Dockerfile | 37 +++++++++++++++++++++++++++++++++ cpm-live/conda-environment.yaml | 18 ++++++++++++++++ 3 files changed, 67 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 cpm-live/conda-environment.yaml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..0eb0cb5 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,12 @@ +venv +.venv +__pycache__ +.idea +.vscode +*.pb +*.tsv +.DS_Store +*.pyc +.env +*.pt +.ipynb_checkpoints diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..94de7c0 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,37 @@ +ARG CUDA_IMAGE=11.7.0-devel-ubuntu18.04 +FROM nvidia/cuda:${CUDA_IMAGE} as cuda_source +FROM continuumio/miniconda3:22.11.1 + +# Proxy (if needed) +ARG HTTP_PROXY +ENV HTTPS_PROXY=${HTTP_PROXY} +ENV http_proxy=${HTTP_PROXY} +ENV https_proxy=${HTTP_PROXY} + +# Build packages +RUN apt-get update \ + && apt-get install -y --allow-downgrades --allow-change-held-packages --no-install-recommends \ + ibverbs-providers \ + libibverbs1 \ + librdmacm1 \ + vim \ + g++ \ + && apt-get clean + +# Copy cuda devel from nvidia docker +ARG CUDA=11.7 +ENV CUDA_HOME=/usr/local/cuda-${CUDA} +COPY --from=cuda_source ${CUDA_HOME} ${CUDA_HOME} + +COPY cpm-live /cpm-live +WORKDIR /cpm-live + +RUN conda config --set channel_priority strict && \ + conda env create -f conda-environment.yaml && conda clean -q -y -a + +# Replace the shell binary with activated conda env +RUN echo "conda activate "`conda env list | tail -2 | cut -d' ' -f1` >> ~/.bashrc +SHELL ["/bin/bash", "--login", "-c"] + +# Default entrypoint +CMD ["/bin/bash", "--login"] diff --git a/cpm-live/conda-environment.yaml b/cpm-live/conda-environment.yaml new file mode 100644 index 0000000..5d8db8f --- /dev/null +++ b/cpm-live/conda-environment.yaml @@ -0,0 +1,18 @@ +name: cpm-live +channels: + - pytorch + - nvidia + - conda-forge + - huggingface +dependencies: + - python=3.10 + - pytorch==1.13.1=py3.10_cuda11.7_cudnn8.5.0_0 + - torchvision=0.14.1 + - torchaudio=0.13.1 + - pytorch-cuda=11.7 + - pip=23.0 + - pip: + - bmtrain==0.2.1 + - jieba==0.42 + - tensorboard==2.12 + - tqdm==4.65 From afb6fb8485b052471843373b0f31f98c28a210f6 Mon Sep 17 00:00:00 2001 From: Nikolai Zakharov Date: Fri, 31 Mar 2023 21:47:06 +0800 Subject: [PATCH 2/2] feat: PERF000: added dependencies --- cpm-live/conda-environment.yaml | 1 + cpm-live/pyproject.toml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/cpm-live/conda-environment.yaml b/cpm-live/conda-environment.yaml index 5d8db8f..4964869 100644 --- a/cpm-live/conda-environment.yaml +++ b/cpm-live/conda-environment.yaml @@ -16,3 +16,4 @@ dependencies: - jieba==0.42 - tensorboard==2.12 - tqdm==4.65 + - opendelta==0.3.2 diff --git a/cpm-live/pyproject.toml b/cpm-live/pyproject.toml index ca474fb..1c687ce 100644 --- a/cpm-live/pyproject.toml +++ b/cpm-live/pyproject.toml @@ -4,4 +4,4 @@ include = ["cpm_live"] [tool.black] line-length = 100 target-version = ['py37'] -include = '\.pyi?$' +include = '\.pyi?$' \ No newline at end of file