-
Notifications
You must be signed in to change notification settings - Fork 14
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #907 from anarkiwi/cudatorchserve
Build torchserve container with both cpu (default) and cuda versions.
- Loading branch information
Showing
6 changed files
with
58 additions
and
130 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
FROM nvidia/cuda:11.8.0-runtime-ubuntu22.04 | ||
ENV DEBIAN_FRONTEND=noninteractive | ||
WORKDIR /root | ||
RUN apt-get update && \ | ||
apt-get install -y \ | ||
git \ | ||
python3-pip | ||
RUN pip config set global.no-cache-dir false && \ | ||
git clone https://github.com/pytorch/serve -b v0.8.2 && \ | ||
cd serve && \ | ||
python3 ./ts_scripts/install_dependencies.py --cuda cu118 --environment prod && \ | ||
pip3 install . && \ | ||
cd .. && \ | ||
rm -rf serve | ||
RUN /usr/local/bin/torchserve --help |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,86 +1,15 @@ | ||
FROM --platform=$BUILDPLATFORM ubuntu:22.04 as git-cloner | ||
WORKDIR /root | ||
RUN apt-get update && \ | ||
apt-get install -y \ | ||
ca-certificates \ | ||
git \ | ||
python3 | ||
RUN git clone https://github.com/google/shaderc -b v2023.6 | ||
RUN git clone https://github.com/pytorch/pytorch -b v2.1.0 | ||
RUN git clone https://github.com/pytorch/serve -b v0.8.2 | ||
WORKDIR /root/shaderc | ||
RUN ./utils/git-sync-deps | ||
WORKDIR /root/pytorch | ||
RUN git submodule update --init --recursive | ||
|
||
FROM ubuntu:22.04 as shader-compiler | ||
WORKDIR /root | ||
RUN apt-get update && \ | ||
apt-get install -y \ | ||
build-essential \ | ||
cmake \ | ||
git \ | ||
ninja-build \ | ||
python3-dev \ | ||
python3-pip | ||
COPY --from=git-cloner /root/shaderc /root/shaderc | ||
WORKDIR /root/shaderc/build | ||
RUN cmake -GNinja -DCMAKE_BUILD_TYPE=Release -DSHADERC_SKIP_TESTS=on .. && ninja && ninja install | ||
|
||
FROM ubuntu:22.04 as pytorch-compiler | ||
FROM ubuntu:22.04 | ||
ENV DEBIAN_FRONTEND=noninteractive | ||
ENV USE_CUDA=0 | ||
ENV USE_VULKAN=1 | ||
ENV USE_VULKAN_SHADERC_RUNTIME=1 | ||
ENV USE_VULKAN_WRAPPER=0 | ||
WORKDIR /root | ||
COPY --from=shader-compiler /usr/local /usr/local | ||
COPY --from=git-cloner /root/pytorch /root/pytorch | ||
RUN apt-get update && \ | ||
apt-get install -y \ | ||
build-essential \ | ||
cmake \ | ||
git \ | ||
libvulkan-dev \ | ||
ninja-build \ | ||
python3-dev \ | ||
python3-pip | ||
WORKDIR /root/pytorch | ||
COPY pytorch-patch.txt /root/pytorch | ||
RUN patch -p1 < pytorch-patch.txt | ||
RUN pip3 install -U pyyaml | ||
RUN python3 setup.py install && python3 setup.py develop | ||
RUN python3 -c "import torch ; assert(torch.is_vulkan_available())" | ||
|
||
FROM ubuntu:22.04 as torchserve-builder | ||
RUN apt-get update && \ | ||
apt-get install -y \ | ||
build-essential \ | ||
cmake \ | ||
git \ | ||
libvulkan-dev \ | ||
ninja-build \ | ||
openjdk-17-jdk \ | ||
python3-dev \ | ||
python3-pip | ||
WORKDIR /root | ||
COPY --from=git-cloner /root/serve /root/serve | ||
WORKDIR /root/serve | ||
COPY torchserve-patch.txt /root/serve | ||
RUN patch -p1 < torchserve-patch.txt | ||
COPY --from=pytorch-compiler /usr/local /usr/local | ||
RUN python3 -c "import torch ; assert(torch.is_vulkan_available())" | ||
RUN python3 ./ts_scripts/install_dependencies.py --environment prod | ||
RUN pip3 install . | ||
|
||
FROM ubuntu:22.04 | ||
RUN apt-get update && \ | ||
apt-get install -y \ | ||
libvulkan1 \ | ||
openjdk-17-jre \ | ||
python3 \ | ||
python3-pip | ||
WORKDIR /root | ||
COPY --from=torchserve-builder /usr/local /usr/local | ||
RUN python3 -c "import torch ; assert(torch.is_vulkan_available())" | ||
RUN pip config set global.no-cache-dir false && \ | ||
git clone https://github.com/pytorch/serve -b v0.8.2 && \ | ||
cd serve && \ | ||
python3 ./ts_scripts/install_dependencies.py --environment prod && \ | ||
pip3 install . && \ | ||
cd .. && \ | ||
rm -rf serve | ||
RUN /usr/local/bin/torchserve --help |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.