はじめに
Meep(FDTD 電磁場解析)
Anomalib(PyTorch ベース異常検知)
TiberCAD(半導体デバイス解析)
これらを 同じ環境で実用レベルで使いたい、という状況がありました。
正直に言うと、
本当は Linux マシンがあればそれが一番楽
だと思います。
しかし、手元にあるのは社給のWindows PC だけ。
新しく Linux マシンを用意する予定もありません。
そこで、
Windows PC しかない前提で、現実的に全部動かす
という割り切りのもとで選んだのが WSL2 + Ubuntu でした。
結果として、
Meep:問題なく動作
Anomalib:GPU を含めて利用可能
TiberCAD:GUI / バッチともに実用可
という状態まで持っていけたので、
同じ制約の人向けに手順とハマりポイントをまとめておきます。
環境
OS: Windows 11
WSL: WSL2
Linux: Ubuntu(20.04 / 22.04)
GPU: NVIDIA(WSL 対応ドライバ)
Python 管理: Miniconda
全体方針
なぜ WSL2 なのか**
・Meep / TiberCAD は Linux ネイティブ前提
・Anomalib(PyTorch GPU)は WSL で普通に動く
・Windows ネイティブで全部揃えるのは現実的でない
👉 「Windows PC しかない」という制約下での妥協解
conda 環境は用途別に分ける
全部を 1 環境に入れると 確実に壊れます。
以下のようにmp(Meep用の環境)、tib(TiberCad用),ml(Anomalib/PyTorch用の環境)の環境を構築して、それぞれにインストールするようにしました。
| conda 環境 | 用途 |
|---|---|
mp |
Meep(FDTD) |
ml |
Anomalib / PyTorch |
tib |
TiberCAD |
1. WSL2 + Ubuntu の準備
PowerShell(管理者)で:
wsl --install
再起動後、Ubuntu を起動して初期設定。
確認:
wsl -l -v
Ubuntu Running 2
次に
2. Miniconda のインストール(WSL 内)
cd ~
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh
exec bash
確認:
conda --version
3. Meep 用環境(mp)
conda create -n mp python=3.10 -y
conda activate mp
conda install -c conda-forge pymeep -y
確認:
python - << 'EOF'
import meep as mp
print(mp.__version__)
EOF
4. Anomalib(PyTorch GPU)用環境(ml
GPU が見えるか確認
nvidia-smi
環境作成
conda create -n ml python=3.10 -y
conda activate ml
pip install --upgrade pip
PyTorch(CUDA 11.6 例)
※ ドライバに合わせて固定するのが重要。
pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 \
--extra-index-url https://download.pytorch.org/whl/cu116
確認:
python - << 'EOF'
import torch
print(torch.cuda.is_available())
print(torch.cuda.get_device_name(0))
EOF
Anomalibのインストール
pip install "pytorch-lightning<2.0" "torchmetrics<1.0"
pip install "anomalib<1.0"
5. TiberCAD 用環境(tib)**
conda create -n tib python=3.10 -y
conda activate tib
インストーラ入手の注意
公式サイトの 直リンク(http://www.tibercad.org/)は wget / curl では失敗
Windows のブラウザでファイルをダウンロードして保存 → WSL にコピーが確実
cp /mnt/c/Users/<user>/Downloads/tiberCAD-3.5.0-x86_64-linux_installer.sh ~/
chmod +x tiberCAD-3.5.0-x86_64-linux_installer.sh
インストール
./tiberCAD-3.5.0-x86_64-linux_installer.sh
インストール先は ホームディレクトリ配下推奨:
/home/<user>/tibercad-3.5.0
6. TiberCAD 実行時のハマりポイント
早速tibercadのexample fileを実行しようとすると、下記のエラーが発生
libatomic エラー
error while loading shared libraries: libatomic.so.1
対処
sudo apt install -y libatomic1
したら解決できました。
次に
PATH 設定(必須)
echo 'export PATH=$HOME/tibercad-3.5.0/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
7. TiberCAD の基本的な使い方
conda activate tib
cd ~/tibercad-3.5.0/examples/Example_0
tibercad bulk.tib
👉 bin のフルパスを書く必要はない
8. GUI アプリ(Spyder)について
・VcXsrv が必要
・DISPLAY 設定:
export DISPLAY=$(grep -m 1 nameserver /etc/resolv.conf | awk '{print $2}'):0
疎通確認:
xclock
ということで何とかどれも使えるようになりました。
まとめ
Windows PC しかなくても、WSL2 で実用環境は作れる
conda 環境は 用途別に分離必須
TiberCAD は配布・依存関係にクセがあるが対処可能
一度作れば 再現性のある作業環境になる
※本記事は筆者個人の見解であり、所属組織の公式見解を示すものではありません。
問い合わせ
光学シミュレーションソフトの導入や技術相談、
設計解析委託をお考えの方はサイバネットシステムにお問合せください。
光学ソリューションサイトについては以下の公式サイトを参照:
👉 光学ソリューションサイト(サイバネット)
光学分野のエンジニアリングサービスについては以下の公式サイトを参照:
👉 光学エンジニアリングサービス(サイバネット)