-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile.intel-topo-opt
60 lines (48 loc) · 1.44 KB
/
Dockerfile.intel-topo-opt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
FROM intel/oneapi-iotkit:2022.3.1-devel-ubuntu18.04
SHELL ["/bin/bash", "-c"]
WORKDIR /root
RUN apt-get update && apt-get install -y \
libx11-dev \
libxrandr-dev \
libxinerama-dev \
libxcursor-dev \
libxi-dev \
libnlopt-dev \
&& \
rm -rf /var/lib/apt/lists/*
RUN python -m pip install \
colorama \
flask \
flask_cors \
GitPython \
numpy \
Pillow \
psutil \
pybind11 \
PyQt5 \
requests \
scipy \
yapf
RUN git clone https://github.com/yuanming-hu/taichi.git --branch legacy --depth=1 && \
cd taichi && \
git clone https://github.com/yuanming-hu/taichi_runtime external/lib -b linux --depth 1 && \
git submodule update --init --recursive
ENV TAICHI_NUM_THREADS=8
ENV TAICHI_REPO_DIR=/root/taichi
ENV PYTHONPATH=/root/taichi/python/:
ENV PATH="/root/taichi/bin:$PATH"
RUN python -c "import taichi as tc" && \
rm -rf /root/taichi/build/CMakeFiles
RUN cd /root/taichi/projects && \
git clone https://github.com/yuanming-hu/spgrid_topo_opt.git --depth=1
ENV TC_MKL_PATH=/opt/intel/oneapi/mkl/latest/lib/intel64/
ENV CUDA_ARCH=0
ENV TC_USE_DOUBLE=1
WORKDIR /root/taichi/projects/spgrid_topo_opt
# Patch SIMD header with immintrin.h
COPY SPGrid_SIMD_Utilities.h.patch SPGrid_SIMD_Utilities.h.patch
RUN patch external/SPGrid/Tools/SPGrid_SIMD_Utilities.h < SPGrid_SIMD_Utilities.h.patch && \
rm SPGrid_SIMD_Utilities.h.patch
RUN cd solver && \
make
RUN ti build