Vsphere-1.7.8 (VCAD)のインストール
Vsphereと言えば、vmwareが出してるソフトウェアの一つだけれども、実は同名のソフトウェアを理研が公開している(要登録)。
VCAD システム研究プログラム
純国産コードのみでのCAEの統合開発環境の構築を試みたVCADシステム、その中核を担うソフトウェアだが、ちょっとググった限りではそれほど広く普及しているとは言い難い。
そんな中で諸事情により本ソフトウェアをローカル環境にインストールする必要に迫られた。
理研の上記リンクからVsphereをダウンロードして展開し、
./configure --prefix=$HOME/Vsphere
make
をまずやってみた。これに失敗。
エラーを見ると、SKLTiming.hの中でfprintfが定義されていないと言われる。いやいや、stdio.hにあるだろ…。
不信感にかられつつSKLTiming.hの中を見るとstdio.hのインクルードがない。別のインクルードファイルで間接的に引用しているとかも見たところなさげ。
わけがわからんなーと思いつつ、SKLTiming.hの一番上に#include
これで最後までmakeができたので
make install
今度も問題なし。まあ、とりあえず動くかな…と、思い、サンプルコードを探してみたら見つからない。どうやらそんな軟弱なものは提供していないらしい。
諸事情から、Vsphereを使った物理計算のコードが手元にあったので、Vsphereのprefixを自分のローカル環境に書き換えてコンパイルしてみた。
しかし再度失敗。どうやらg++やgfortranと相性があまりよろしくないらしい。仕方ないのでIntelコンパイラで再度Vsphereをインストールする。ついでにopenmpiも最新版を設定しておいた(前のエントリ)。
./configure --prefix=$HOME/Vsphere --enable-openmpi=$HOME/openmpi CXX=icpc F90=ifort CXXFLAGS=-O3 F90FLAGS=-O3 LDFLAGS=-L/opt/intel/lib/intel64
make
make install
インストール後、手元のコードをコンパイルすると、無事実行ファイルが作成され、mpiが正常に動作することを確認した。
しかしデフォルトで出力されるファイルはVCADシステムオリジナルのバイナリファイルで中身のフォーマットさえ分からない。計算結果の確認さえできない。
どうやらまた別の可視化ソフトV-isioを使わないといけないらしい。面倒。このへんがいまいち流行ってない原因だろうか…。