Spaces:
Sleeping
Sleeping
Update Dockerfile
Browse files- Dockerfile +17 -18
Dockerfile
CHANGED
|
@@ -24,38 +24,35 @@ ENV PYTHONUNBUFFERED=1
|
|
| 24 |
ENV PYTHONDONTWRITEBYTECODE=1
|
| 25 |
|
| 26 |
# ------------------------------------------------
|
| 27 |
-
# メモリアロケータ
|
| 28 |
# ------------------------------------------------
|
| 29 |
-
# jemalloc: 大テンソルの断片化抑制
|
| 30 |
ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2
|
|
|
|
|
|
|
| 31 |
|
| 32 |
# ------------------------------------------------
|
| 33 |
-
# スレッド数 (物理2コア
|
| 34 |
# ------------------------------------------------
|
|
|
|
| 35 |
ENV OMP_NUM_THREADS=2
|
| 36 |
ENV MKL_NUM_THREADS=2
|
| 37 |
-
# PyTorch inter-op 並列度: 単一モデル推論では 1 が最適
|
| 38 |
ENV TORCH_NUM_INTEROP_THREADS=1
|
| 39 |
|
| 40 |
# ------------------------------------------------
|
| 41 |
-
# Intel OpenMP チューニング
|
| 42 |
# ------------------------------------------------
|
| 43 |
-
# アイド
|
| 44 |
-
ENV
|
| 45 |
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
# スピンすると HT 兄弟スレッドの演算ユニットを奪い実効性能が低下する。
|
| 50 |
-
ENV OMP_WAIT_POLICY=PASSIVE
|
| 51 |
|
| 52 |
# ------------------------------------------------
|
| 53 |
-
# oneDNN チューニング
|
| 54 |
# ------------------------------------------------
|
| 55 |
-
# FP32 演算も BF16 精度で高速実行 (AVX-512_BF16 カーネルを最大活用)
|
| 56 |
ENV DNNL_DEFAULT_FPMATH_MODE=BF16
|
| 57 |
-
|
| 58 |
-
ENV ONEDNN_PRIMITIVE_CACHE_CAPACITY=1024
|
| 59 |
|
| 60 |
WORKDIR /home/hf
|
| 61 |
|
|
@@ -71,8 +68,10 @@ ENV VIRTUAL_ENV=/home/hf/ComfyUI/venv
|
|
| 71 |
RUN python3 -m venv $VIRTUAL_ENV
|
| 72 |
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
|
| 73 |
|
| 74 |
-
|
| 75 |
-
RUN pip install --no-cache-dir --
|
|
|
|
|
|
|
| 76 |
|
| 77 |
# ------------------------------------------------
|
| 78 |
# models
|
|
|
|
| 24 |
ENV PYTHONDONTWRITEBYTECODE=1
|
| 25 |
|
| 26 |
# ------------------------------------------------
|
| 27 |
+
# メモリアロケータ設定の強化
|
| 28 |
# ------------------------------------------------
|
|
|
|
| 29 |
ENV LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2
|
| 30 |
+
# 💡 jemallocのバックグラウンドスレッドを有効化し、断片化とメモリ肥大化を徹底抑制
|
| 31 |
+
ENV MALLOC_CONF="background_thread:true,metadata_thp:auto,dirty_decay_ms:20000,muzzy_decay_ms:20000"
|
| 32 |
|
| 33 |
# ------------------------------------------------
|
| 34 |
+
# スレッド数 (🔥 物理2コアに合わせて「2」に削減)
|
| 35 |
# ------------------------------------------------
|
| 36 |
+
# ディープラーニングのCPU推論では、HT(論理コア)を使うとAVX-512ユニットを奪い合って逆に遅くなります
|
| 37 |
ENV OMP_NUM_THREADS=2
|
| 38 |
ENV MKL_NUM_THREADS=2
|
|
|
|
| 39 |
ENV TORCH_NUM_INTEROP_THREADS=1
|
| 40 |
|
| 41 |
# ------------------------------------------------
|
| 42 |
+
# Intel OpenMP チューニング (🔥 常時100%全力スピンモード)
|
| 43 |
# ------------------------------------------------
|
| 44 |
+
# 物理2コアに綺麗にバインド
|
| 45 |
+
ENV KMP_AFFINITY=granularity=fine,compact
|
| 46 |
|
| 47 |
+
# 💡 スレッドを絶対に休ませないための2つの魔法
|
| 48 |
+
ENV OMP_WAIT_POLICY=ACTIVE
|
| 49 |
+
ENV KMP_BLOCKTIME=infinite
|
|
|
|
|
|
|
| 50 |
|
| 51 |
# ------------------------------------------------
|
| 52 |
+
# oneDNN チューニング
|
| 53 |
# ------------------------------------------------
|
|
|
|
| 54 |
ENV DNNL_DEFAULT_FPMATH_MODE=BF16
|
| 55 |
+
ENV ONEDNN_PRIMITIVE_CACHE_CAPACITY=512
|
|
|
|
| 56 |
|
| 57 |
WORKDIR /home/hf
|
| 58 |
|
|
|
|
| 68 |
RUN python3 -m venv $VIRTUAL_ENV
|
| 69 |
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
|
| 70 |
|
| 71 |
+
# 💡 キャッシュを生成せず、IPEX(Intel Extension for PyTorch)を追加インストール
|
| 72 |
+
RUN pip install --no-cache-dir --upgrade pip && \
|
| 73 |
+
pip install --no-cache-dir --prefer-binary -r requirements.txt && \
|
| 74 |
+
pip install --no-cache-dir intel-extension-for-pytorch
|
| 75 |
|
| 76 |
# ------------------------------------------------
|
| 77 |
# models
|