DALAB情報発信用ブログ:OpenCAE+GPGPU+Peridynamics編

DALABで行っている研究活動の中で、OpenCAEやGPGPUや破壊解析の取り組みについてまとめてゆきます。

DEXCS2012-Salomeの有効活用:CFD/Code_Saturneの導入手順(1)

2013年06月17日 18時47分29秒 | OpenCAE活用
DEXCS2012-Salomeは、Salome-Mecaによる構造解析を目的とするオープンCAEシステムですが、開発元のEDFでは流体解析ソルバーとしてCode_Saturneを公開しています。これはプリポストシステムのSalomeにおいて、構造解析Code_Asterと流体解析Code_Saturneを統合した連成解析が可能となっているそうなので、非常に期待しています。
http://code-saturne.org/cms/

そこで、DEXCS2012-Salome (Ubuntu-12.04LTS-64)をベースにして、Code_Saturneを導入する手順をまとめます。なおこの手順は、以下のPENGUINITISさんのブログを参考にして、DEXCS2012-Salome用に補足したものです。他のLinuxシステムでも同様な手順ですが、具体的な記述はDEXCS2012-Salome-D1-B1-64をベースにしています。
http://www.geocities.co.jp/SiliconValley-SantaClara/1183/study/Code_Saturne/Code_Saturne_setup.html

Code_Saturneの導入では、以下の"installation guide"に示す手作業で各種のツールを組み込んで、完全で高性能なシステムを構築することも可能ですが、この記事では簡易なインストーラーを用いる方法を説明します。性能向上が必要になった段階で、手作業での高性能システムの構築手順をご紹介する予定です。
http://code-saturne.org/cms/sites/default/files/install-3.0.pdf

■ はじめの注意

インストールではネットワークからダウンロードを行うので、DEXCS2012はインターネットに接続可能にします。
他にCUDAの導入などを行うとツールのバージョンが異なるので、以下はDEXCS2012-Salomeの導入直後を前提とします。
以下に示す導入手順は例題が動作する基本状態の構築までを示しており、並列処理など性能向上にはツールの追加が必要になります。

■ ダウンロードと展開

以下のサイトからCode_Saturneのインストールツールをダウンロードします。2013/06時点での最新の公開版は3.0になるので、ページの最初の行にある"installer"よりダウンロードします。インストールツールなのですぐに終わります。DEXCSでChromiumブラウザを用いた場合は、ホームのDownloadsに、installer-3.0.1.tar.gzが保存されます。
http://code-saturne.org/cms/download/3.0

以下の手順で展開して、~/Downloads/installerでインストール作業を進めます。なお以下の手順ではコマンド入力を基本にしており、Ubuntuの端末を利用します。DEXCSでは上部のバーかアプリケーション→アクセサリ→端末で利用できます。複数起動して目的に応じて使い分けると便利です。
$ cd ~/Downloads
$ tar xvfz installer-3.0.1.tar.gz
$ cd installer; ls -l

ここで3つのファイルが確認できて、README.txtはインストールの説明、install_saturne.pyはインストールスクリプト、setupはインストールの設定ファイルでこれを書き換えてインストールを進めます。

■ インストール環境の準備

DEXCSの状態でインストールを進めるためには、以下のツールの追加が必要です。アプリケーション→システムツール→システム管理→Synapticパッケージマネージャを起動します。ログインユーザーのパスワードを入力してツールが起動したら、再読込を押して最新の状態にしておきます。

g++:検索 g++ (4.6.3) → g++ g++4.6 libstdc++6-4.6-dev (3)
gfortran:検索 gfortran (4.6.3) → gfortran gfortran-4.6 (2)
opnempi:検索 openmpi (1.4.3) → libopenmpi-dbg libopenmpi-dev (2) + 関連ツール(1)
cmake:検索 cmake (2.8.7) → cmake cmake-data cmake-dbg (3) + 関連ツール(2)
PyQt4:検索 pyqt4 (4.9.1) → pyqt4-dev-tools (1)

■ setupファイルの変更

以下の方針に従って設定を変更します。これは動作を確認した設定ですが、インストール先などは他に選択できます。
・インストール先は、Salome-Mecaがインストールされている/opt/salomeとします。このディレクトリを自由に利用できるように、次のコマンドで設定しておきます。
$ cd /opt
$ sudo chmod 777 salome
・数値計算においては、blasが必要になり様々な高性能ツールがありますが、ここではDEXCSにあるlibblas3gfをそのまま利用します。将来はOpenBLAS、IntelMKLなどの交換が可能です。
・並列処理においては、metis, scotchなどの高性能ツールがありますが、ここではインストールせずデフォルトの機能を利用します。手作業の完全インストールでは、これらを導入できます。
・オプショナルパッケージの cgns, hdf5, med, libxm2 はインストールが必要で、mpiは/usrにインストールされたツールを流用します。これらはインストーラーが自動的にインストールします。

以上を踏まえて、設定ファイルsetupをインストール条件に合わせて変更するので、エディタviなどでsetupを開きます。
$ cd ~/Downloads/installer
$ vi setup

・prefix ~/opt → prefix /opt/salome
・mpi None yes yes → mpi /usr yes no
・libxml2 None auto no  → libxml2 None yes yes

■ コンパイルの実行

先のsetupに従って、以下のコマンドでコンパイルを実行します。
$ ./install_saturne.py

オプショナルパッケージやCode_Saturneなどはインターネットからダウンロードして自動にインストールまで進めてくれます。インストール作業ディレクトリ~/Download/installerの状態を、lsで確認すると様子が分かります。
インストールは、自動的にインストールパッケージをダウンロードし展開して設定して、コンパイルとインストールまで完全自動で進みます。非常に完成度の高いシステムです。インストールは、以下の順序で進みます。
HDF5 (Hierarchical Data Format):version: 1.8.9
CGNS (CFD General Notation System):version: 3.1.3
MED (Model for Exchange of Data):version: 3.0.6
libxml2 (XML library):version: 2.7.8
Code_Saturne (Code_Saturne CFD tool):version: 3.0.1

エラーが無く、最後に「Thank you for choosing Code_Saturne!」と表示されたら、コンパイルは完了です。なお途中でエラーで中断した場合には、install_saturune.logの最後にエラーの詳細があるので、これを参考に対処します。

インストール先は、/opt/salome/code_saturne-3.0.1です。この中のbinに、code_saturne ple-configがあり、「code_saturne」が実行形式になります。以下のコマンドで、実行時のオプションが表示されます。
$ /opt/salome/code_saturne-3.0.1/bin/code_saturne

以下の記述を最後に追加して、コマンド実行パスを設定しておきます。
$ cd ~
$ vi .bashrc
$ source .bashrc

===== .bashrc =====
# code_saturne
export PATH=/opt/salome/code_saturne-3.0.1/bin:$PATH
===================

最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。