Intel+WindowsPCの並列化処理
いまどきのPCですが、Core-i5, メモリ4G, 64ビットにintel Visual Fortran11.1.048をインストールし、コマンドプロンプトにコマンドを入力しながら利用しています。
このような状況でもCPUの分割による並列計算ができると思っています。
自分のプログラム(流体計算系)を以下のようにしてコンパイル、実行してみました。
ifort /Qparallel abc.f↓
abc.exe <ret>↓
一応、トコトコと最後まで走っていきますが、コンパイラオプション /Qparallelをつけずにコンパイルした場合と速度はほぼ変わりません(同じと言ってもいいぐらい)。自分が何か間違っているか、並列処理では効率が上がりにくいつくりになっているのかわかりませんが。ただ、このコンパイラオプションは自動並列化で、ソースの作り方が少々悪くても対応するのではないかと思っています。
(悪いのは悪いのなりに、比率の比較はできるだろうと思うのですが)
また、コンパイラオプションですが、いろんなサイトを見ると、-parallel となっている場合が多いですが、ifort -helpでオプションを調べると、/Qparallel と表示されます、これでいいでしょうか。
もう1つお願いなのですが、フォートランのプログラムで並列化オプションの有無ではっきりパフォーマンスの違いがわかる簡単なサンプルコードがないでしょうか。ラプラス方程式とかポアソンソルバーとか割とソース事態は短くて、並列効果が顕著なコードですが。ネットで見るとあることはありますが、C言語だったりします。
自分で作ると、あまり効果がわからないので、これぞ、並列効果というのがわかるとありがたいです。
また、それによって、自分の環境ががんばり次第で並列化で高速化できるという自信にもなります。
(今効果が出ないのは、ひょっとしたら並列環境のインストールにミスがあるのではないか、私が何か勘違いしているのではないかと疑いもあるからです。)
並列化の処理速度以外でこのコンパイラの動作に異常はないようです。
以上、よろしくお願いします。
補足
回答ありがとうございます。 課題の参考にさせてもらいました!