LoginSignup
6
3

More than 1 year has passed since last update.

CUDA on WSLで分子動力学シミュレーションを行う

Last updated at Posted at 2022-01-16

先日、分子動力学 (MD) シミュレーションを Windows OS で実行するより、Linux で実行する方が良いという投稿を見つけました。そこで今回は、MDシミュレーションの計算時間を Windows Subsystem for Linux (WSL) 2 と Windows11 とで比較しました。

環境

  • Ryzen5 3600
  • RTX2060
  • Windows11
  • WSL 2 (Ubuntu 20.04)
  • CUDA Version: 11.6

CUDA on WSL User Guide に従って環境設定を行った。

手順

NAMDのインストール

NAMDの公式サイトから Linux-x86_64-multicore-CUDA (NVIDIA CUDA acceleration) と Win64-CUDA (NVIDIA CUDA acceleration) をダウンロードして任意のディレクトリに解凍する。

ベンチマークのダウンロード

今回のベンチマークとして ApoA-1 (善玉コレステロールの構成成分) を用いた。
apoa1.png

$ wget https://www.ks.uiuc.edu/Research/namd/utilities/apoa1.tar.gz
$ tar -xvf apoa1.tar.gz

MDシミュレーションの実行

NAMD の実行ファイル (apoa1.namd) を以下のように変更した。

apoa1.namd
cellBasisVector1     108.8612 0.0 0.0
cellBasisVector2     0.0 108.8612 0.0
cellBasisVector3     0.0 0.0 77.758
cellOrigin           0.0 0.0 0.0

coordinates          apoa1.pdb
temperature          300
seed                 74269

switching            on
switchdist           10
cutoff               12
pairlistdist         13.5
margin               0
stepspercycle        20

PME                  on
PMEGridSizeX         108
PMEGridSizeY         108
PMEGridSizeZ         80

structure            apoa1.psf
parameters           par_all22_prot_lipid.xplor
parameters           par_all22_popc.xplor
exclude              scaled1-4
1-4scaling           1.0

timestep             1.0
fullElectFrequency   4

numsteps             100000  ;# 100 ps
outputtiming         1000

outputname           apoa1-out

WSL 2 で実行する場合

zsh
$ NAMD_2.14_Linux-x86_64-multicore-CUDA/namd2 +p4 apoa1/apoa1.namd > apoa1_wsl.log

Windows11 で実行する場合

PowerShell
> NAMD_2.14_Win64-multicore-CUDA/namd2 +p4 apoa1/apoa1.namd > apoa1_win.log

結果

apo1a.gif

MDシミュレーションの WSL 2 での実行結果と Windows11 での実行結果を比較したところ、WSL 2 の方が Windows11 で実行するよりも2倍以上速かった (N=3、エラーバーは標準偏差を示す)。

result.png

MDシミュレーション実行中における GPU の使用率は、WSL 2 も Windows11 も90%以上で推移していたが、CPU の使用率は WSL 2 では40%~50%、Windows11 では20%~30%だった。この CPU 使用率の差が、Linux 版と Windows 版の NAMD のプログラムによる違いによるのか、 Linux と Windows の違いによるのかはわかりません。

まとめ

  • ApoA-1 の 100 ps のMDシミュレーションの結果、Windows11 よりも WSL 2 で実行した方が速かった。
  • WSL 2 と Windows11 で実行した場合、CPU 使用率に差があった。

参考資料

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3